В моем приложении я часто использую ExecutorService для выполнения асинхронных вызовов.
ExecutorService executorService = Executors.newFixedThreadPool(10);
И я отключаю executorService только тогда, когда приложение (веб-приложение) закрывается.Недавно при отладке некоторых проблем я просматривал этот код и задавался вопросом, могут ли быть случаи во время выполнения программы, когда я вынужден завершить работу ExecutorService и перезапустить его, то есть новый набор объединенных потоков.Поэтому я хотел знать, какие типичные сценарии / неожиданное поведение приложения могут заставить меня сделать это?
Типичные исключения, которые я проверяю, - ExecutionException, InterruptedException, CancellationException
, но я не делаю ничего, кроме их регистрации.