1

我有一个ScheduledExecutorService定期执行任务:

executor.scheduleWithFixedDelay(new Runnable() {

在特定事件上,我想重置或延迟时间表的时间。如何或应该如何做到这一点?

4

1 回答 1

2

您需要保留Future<?>对该方法返回的引用。

Future<?> taskHandle = scheduledExecutorService.scheduleAtFixedRate

然后调用cancel它并以不同的速率再次安排它。

taskHandle.cancel(false);
taskHandle = scheduledExecutorService.scheduleAtFixedRate
于 2013-04-26T18:17:48.253 回答