У меня есть небольшое автономное приложение, которое настраивает планировщик для корректного завершения. Со следующей конфигурацией:
@Bean
public TaskScheduler taskScheduler() {
ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();
scheduler.setWaitForTasksToCompleteOnShutdown(true);
scheduler.setAwaitTerminationSeconds(60);
return scheduler;
}
Я могу заставить его изящно завершить планировщик, но только если у меня нет задачи @Scheduled(cron =). Как только у меня есть один из них, независимо от того, что планировщик застрянет до истечения времени ожидания. Я уже пытался настроить его также с помощью исполнителя и выполнить отключение / ожидание вручную, и эффект точно такой же.
Эти задания cron даже не выполняются. Они настроены на запуск в фиксированное время, например, ночью.
Весенняя версия: 4.2.8.РЕЛИЗ
Это произойдет, когда тайм-аут достигнет конца:
2017.07.28 01:44:56 [Thread-3] WARN Timed out while waiting for executor 'taskScheduler' to terminate
есть идеи?