6

多くのワーカーを作成した1つのメインスレッドがあり、すべてのワーカーはスレッドです。

一部のワーカーで例外が発生した場合、またはワーカーが正常に終了できない場合、メインスレッドのワーカーからエラーを取得するにはどうすればよいですか?

ワーカー スレッドが停止する前にエラーを送信する方法は?

4

4 に答える 4

4

java.util.concurrent Executor フレームワークを使用し、送信された各ワーカーから Future を生成する場合、Future で get() を呼び出すと、ワーカーの結果、またはそのワーカー内でスロー/キャッチされた例外が返されます。

于 2013-08-14T07:06:51.777 に答える
2

すべてのスレッドでキャッチされていないすべての例外をインターセプトするグローバル UncaughtExceptionHandler を設定できます。

Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() {
    @Override
    public void uncaughtException(Thread t, Throwable e) {
        ...
    }
});
于 2013-08-14T07:03:29.680 に答える