获取对计划任务的引用

时间:2017-04-26 15:53:28

标签: java runnable scheduledexecutorservice

如何使用Java并发API来获取对计划执行的任务的引用?

我可以做这样的事情,并保持对myRunnable的引用:

ScheduledExecutorService exec = Executors.newSingleThreadScheduledExecutor();
SimpleRunnable myRunnable = new SimpleRunnable();
exec.scheduleAtFixedRate(myRunnable, 0, 2, TimeUnit.SECONDS);

但有没有办法使用Executor服务或ScheduledFuture来获取参考?

This question显示了Future个对象的集合,并讨论了它们对任务的引用,但我没有看到任何公开的API方法暴露它。

1 个答案:

答案 0 :(得分:0)

未来引用表示异步任务的计算结果,而任务本身基本上是您传递给scheduleAtFixedRate方法的可运行引用(' myRunnable'在下面的示例中)。

ScheduledExecutorService exec = Executors.newSingleThreadScheduledExecutor();
SimpleRunnable myRunnable = new SimpleRunnable();
ScheduledFuture<?> future  = exec.scheduleAtFixedRate(myRunnable, 0, 2, 
TimeUnit.SECONDS);

我认为您无法从执行程序本身检索Runnable。 请详细说明您愿意达到的目标,并且我会尽力为您提供帮助。