取消现有任务并安排新计时器

时间:2019-01-14 16:41:10

标签: java timer timertask

我正在尝试编写一个计时器程序,该程序可以接受操作以计划在特定时间段后运行。当有新的计划任务时,它应该取消所有旧任务,而仅执行最新的计划任务。

我尝试使用TimerScheduledThreadPoolExecutor。但是,我在cancel()上调用Timer之后,如果我安排新任务,它将抛出IllegalStateExceptionScheduledThreadPoolExecutor不能取消任务。

我知道我当然可以通过每次创建一个新的Timer并取消上一个来做到这一点,但是这种方式似乎效率不高。

我可以通过Timer类来实现吗?如果没有,如何以简单有效的方式做到这一点?

0 个答案:

没有答案