【发布时间】:2016-12-04 22:49:06
【问题描述】:
我需要在我的程序中不断更新数据,所以我认为通过使用 JavaFX 的 Task 可以让它在我的程序中作为一个单独的进程运行。
final Task task = new Task<Void>() {
@Override
protected Void call() throws Exception {
Platform.runLater(() -> {
while (true) {
itemData.forEach(data -> {
System.out.println(data.getId());
});
}
});
return null;
}
};
Thread thread = new Thread(task);
thread.setDaemon(true);
thread.start();
这是在Initializable接口提供的initialize方法中声明的。
然而,当运行这个程序时,任务是唯一运行的东西,即使任务是在单独的线程上运行的。为什么它会这样做而不是按预期运行?
【问题讨论】:
标签: java multithreading javafx