我是线程新手,但我需要使用线程才能使我的javafx应用程序正常工作。我的问题是我需要在程序中执行大量计算,并在两者之间定期更新UI。我知道在javafx线程中进行计算会阻止UI更新,所以我需要将该工作移到另一个线程。
我需要知道的是,因为我之前从未使用过线程,是什么是定期启动该线程的最佳方法,执行部分计算,并将结果发送回javafx线程。
答案 0 :(得分:0)
通常,您使用接口(如Runnable接口)或消息总线库来预订“订阅”线程事件,这些事件名为“回调”。
Implementing callbacks in Java with Runnable
“观察者模式”广泛用于研究。或“发布订阅”(与Google PubSub等任何一个库或工具无关)
RxJava围绕此展示了一些好的模式,但可能比必要的更复杂。
定期结果需要类似Timer的对象,但想法是一样的。