java.util.concurrent · java.base · since Java 1.5
ScheduledExecutorService
public interface ScheduledExecutorService extends ExecutorServiceDelayed and periodic execution: schedule one-shots, fixed-rate (clock-aligned) or fixed-delay (gap-aligned) repeating tasks. The modern Timer.
Key methods
ScheduledFuture<?> schedule(Runnable, delay, unit) | One-shot after a delay. |
scheduleAtFixedRate(task, initial, period, unit) | Every period, regardless of task duration (skips pile up). |
scheduleWithFixedDelay(task, initial, delay, unit) | Delay measured from each completion. |