Возможный дубликат:
Обработка исключений из задач Java ExecutorService
Я использую ExecutorService из Java для координации потоков.
Для запуска потоков я использую
pool = new ExecutorService(2);
callableResults = pool.invokeAll(threads);
Чтобы собрать результат, я использую future.get() для каждого потока.
"threads" - это список объектов класса, который реализует Callable и переопределяет call().
Теперь у меня возникла следующая проблема. Метод call() делает разные исключения. invokeAll() и future.get() бросать только InterruptedException.
Где я могу уловить мои особые исключения, которые я вбрасываю call()? Или я должен обращаться с ними там? Если выбрано одно из этих исключений, то получается a InterruptedException?