如果取消则忽略任务(JavaFX)

时间:2017-12-22 18:47:57

标签: java multithreading javafx concurrency

我在这里发现了很多关于取消JavaFX应用程序中的任务的帖子。 建议的方法是启动cancel方法并检查isCancelled()返回值。

当有很多事情需要忽略时,我的问题就出现了。

例如。

   myTask = new Task<Void>() {
        @Override
        protected Void call() throws Exception {
            if (!isCancelled()){
               doSomething();
            }
            return null;
        }
   };
   new Thread(myTask).start();

但是doSomething()方法正在更新很多UI组件/数据库/其他后台任务。如何忽略/取消方法doSomething()中的所有内容?到目前为止,我有很容易更新的东西,我只是在每个之前检查了isCancelled()的返回值。

我很乐意为你提供帮助, 谢谢!

0 个答案:

没有答案