Sobes.tech
Junior — Middle

Jak realizuje się zakończenie pracy wątku za pomocą metody shutdown?

sobes.tech AI

Odpowiedź od AI

Метод shutdown() в Java используется для корректного завершения работы пула потоков, например, ExecutorService. При вызове shutdown() пул перестаёт принимать новые задачи, но продолжает выполнять уже принятые. После завершения всех задач поток автоматически завершится.

Пример:

ExecutorService executor = Executors.newFixedThreadPool(2);
executor.submit(() -> System.out.println("Задача 1"));
executor.submit(() -> System.out.println("Задача 2"));
executor.shutdown(); // больше задач не принимаются

Если нужно принудительно остановить все задачи, можно использовать shutdownNow(), но это менее безопасно, так как прерывает выполняющиеся задачи.