我正在使用Spring的TaskScheduler安排周期性任务。根据任务的结果取消预定的固定费率任务
ScheduledFuture scheduleAtFixedRate(Runnable task, long period);
我知道我可以调用ScheduledFuture上的cancel()来停止执行循环任务。但是我想取消定期执行的任务,具体取决于任务的执行结果,我不知道如何做到最好。
ScheduledFuture是否允许我访问每个执行任务的结果?或者,我是否需要某种可以保留对此ScheduledFuture的引用的任务侦听器,并以这种方式取消它?或者是其他东西?
仅供参考,这是使用'ScheduledExecutorService'可能实现。所以你可能想扩大这个问题,因为它没有明确依赖于spring。 – 2013-02-28 03:09:34