完成监控javafx任务
如何在不中断与任务进度相关的progressIndicator的情况下检查javafx后台任务是否完成。完成监控javafx任务
try
{
AddMeteorParents amp = new AddMeteorParents(textOpenDB.getText(), textMeteorData.getText(), DatabaseTools.meteorVersion.Meteor14);
proIndAddData.setVisible(true);
proIndAddData.progressProperty().bind(amp.progressProperty());
Thread th = new Thread(amp);
th.setDaemon(true);
th.start();
}
AddMeteorParents类从Task中扩展。 ProIndAddData是一个javafx进度指示器。如果我添加th.join()或th.isAlive()javafx progressIndicator停止工作?我想在任务完成时显示一条消息。
我能够使用的ExecutorService跑了一个又一个回地面任务(没有任何中断progressIndicators)。
ExecutorService eservice = Executors.newFixedThreadPool(1);
我创建了一些[示例代码](https://gist.github.com/jewelsea/4947946),它说明了这种方法。 – jewelsea 2013-02-13 20:31:16
的javafx.concurrent.Task的Javadoc说:
反应状态变化一般地
有时你可能需要编写一个任务,其更新的进度, 信息,文字,或以其他方式作出反应时在任务上发生状态变化 。例如,您可能想要更改失败任务,成功,正在运行或取消状态 更改的状态 消息。
http://docs.oracle.com/javafx/2/api/javafx/concurrent/Task.html#onSucceededProperty
我需要在任务1完成时运行第二个后台任务。如果不中断progressIndicator,我无法做到这一点。 – lochi 2013-02-13 18:33:43