And*_*and 6 java concurrency scheduledexecutorservice
我有一个singleThreadExecutor,我正在使用这样的scheduledFixedDelay来运行Runnable
Runnable periodic = new Runnable() { ... }
ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
executor.scheduleWithFixedDelay(periodic, 1, 1, TimeUnit.MINUTES);
Run Code Online (Sandbox Code Playgroud)
它将在执行之间延迟1分钟.问题是,有时我需要"按需"运行它.那可能吗?
我已经考虑过取消执行,运行Runnable并重新启动执行但是我真正想要的是一些简单的方法,它只是执行Runnable一段时间并重新安排它在一分钟内再次运行.
当您希望任务运行时,您可以提交它
executor.submit(periodic);
Run Code Online (Sandbox Code Playgroud)
或延迟添加
executor.schedule(periodic, delay, units);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1289 次 |
| 最近记录: |