我有一个 singleThreadExecutor,我正在用这样的 scheduleFixedDelay 喂一个 Runnable
Runnable periodic = new Runnable() { ... }
ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
executor.scheduleWithFixedDelay(periodic, 1, 1, TimeUnit.MINUTES);
它将在两次执行之间延迟 1 分钟运行。问题是,有时我需要“按需”运行它。那可能吗?
我考虑过取消执行,运行 Runnable 并重新启动执行,但我真正想要的是一些简单的方法,它只是提前执行 Runnable 并重新安排它在一分钟内再次运行。