Как правильно отлавливать RuntimeExceptions от Executors?
Скажи, что у меня есть следующий код:
ExecutorService executor = Executors.newSingleThreadExecutor();
executor.execute(myRunnable);
Сейчас еслиmyRunnable
бросаетRuntimeExcpetion
как я могу поймать это? Одним из способов было бы поставить свой собственныйThreadFactory
внедрение вnewSingleThreadExecutor()
и установить на заказuncaughtExceptionHandler
с дляThread
s, которые выходят из этого. Другим способом было бы завернутьmyRunnable
местному (анонимному)Runnable
который содержит блок try-catch-. Может быть, есть и другие подобные обходные пути тоже. Но ... почему-то это кажется грязным, я чувствую, что это не должноэто было бы сложно. Есть ли чистое решение?