ScheduledThreadPoolExecutor в Java — это подкласс ThreadPoolExecutor, который может дополнительно планировать выполнение команд после заданной задержки или периодическое выполнение. 2
Некоторые методы, которые используются для этого:
- schedule — позволяет запустить задачу один раз после указанной задержки; 3
- scheduleAtFixedRate — позволяет запустить задачу после указанной начальной задержки, а затем выполнять её повторно с определённым периодом. 3 Аргумент period — это время, измерённое между моментами начала задач, поэтому частота выполнения фиксированная; 3
- scheduleWithFixedDelay — похож на scheduleAtFixedRate, но повторяет заданную задачу, но указанная задержка измеряется между концом предыдущей задачи и началом следующей. 3 Частота выполнения может варьироваться в зависимости от времени, которое требуется для выполнения любой заданной задачи. 3
Для создания ScheduledThreadPoolExecutor обычно используют метод Executors.newScheduledThreadPool(). 3