Расскажите о принципах работы и применении ExecutorService в Java для управления потоками. Приведите пример использования ExecutorService.
Ответ:
ExecutorService — это фреймворк в Java для управления выполнением потоков. Он предоставляет высокоуровневый интерфейс для управления потоками, скрывая детали создания, управления и завершения потоков.
Преимущества:
— Управление пулом потоков.
— Переиспользование потоков.
— Управление жизненным циклом потоков.
Объяснение:
Executors.newFixedThreadPool(2): Создание пула потоков с фиксированным числом (в данном случае, 2) потоков.executorService.execute(...): Подача задач на выполнение. ExecutorService автоматически управляет потоками из пула для выполнения этих задач.shutdown(): Вызывается для завершения работы ExecutorService после завершения всех задач. После вызова shutdown, ExecutorService больше не принимает новые задачи, но выполняет ранее добавленные.Примечание:
ExecutorService предоставляет также методы для выполнения задач с возвращаемым значением, планирования задач на определенное время и другие возможности управления потоками. Он является частью более общего фреймворка управления выполнением (Executor framework) в Java.
