ThreadFactory threadFactory = new ThreadFactory() {
@Override
public Thread newThread(Runnable r) {
final Thread thread = new Thread(r);
// exceptionHandlerはUncaughtExceptionHandlerを実装したオブジェクト
thread.setUncaughtExceptionHandler(exceptionHandler);
return thread;
}
};
で作成した、ThreadFactoryをThreadPoolExecutorのコンストラクタに渡してやれば、
スレッドプール内で例外が発生した際に、exceptionHandlerで実装した例外処理を実行することが可能。
コメントを残す