1. Обзор
При выключении по умолчанию Spring TaskExecutor
просто прерывает все запущенные задачи, но вместо этого может быть неплохо дождаться завершения всех запущенных задач. Это дает возможность каждой задаче принять меры для обеспечения безопасного завершения работы.
В этом кратком руководстве мы узнаем, как сделать это более изящное закрытие приложения Spring Boot, когда оно включает задачи, выполняемые с использованием пулов потоков.
2. Простой пример
Давайте рассмотрим простое приложение Spring Boot. Мы автоматически подключим bean-компонент TaskExecutor по умолчанию
: