gpt4 book ai didi

java - 重新启动 ScheduledThreadPoolExecutor 中取消的任务

转载 作者:行者123 更新时间:2023-11-30 07:13:47 25 4
gpt4 key购买 nike

我正在使用 ScheduledThreadPoolExecutor 创建任务并将 Futures 添加到我的 ThreadFactory 类中的如下列表中。

private static List<Future> futures;
........
ScheduledFuture sf = executor.scheduleAtFixedRate(obj, delayInMilliSec, repeatPeriod, TimeUnit.MILLISECONDS);

futures.add(sf);

现在当我想取消所有的任务时,我会做如下

public void cancelAllTasks(){

Iterator<Future> fi = futures.iterator();

while(fi.hasNext()){

fi.next().cancel(true);
}

}

现在如何在稍后的某个时间点重新启动这些任务?

最佳答案

一旦 future 被取消,任务就不能在以后的阶段恢复。快速浏览 javadoc will explain future 的契约。

要重新启动任务,请与执行者再次安排它们。

关于java - 重新启动 ScheduledThreadPoolExecutor 中取消的任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19147591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com