スレッド外で使用setUncaughtExceptionHandlerキャッチ例外

パッケージcom.dwz.concurrency.chapter11;
 / ** 
 スレッドの* runメソッドは例外、唯一のログコンソールを投げるか、プリントアウトしていない
 * / 
パブリック クラスThreadException {
     プライベート 最終的な 静的の int型の A = 10 ;
     プライベート 決勝 静的に INT B = 0 ; 
    
    公共 静的 ボイドメイン(文字列[]引数){ 
        スレッドT = 新しい新しいスレッド(() - > {
             試み{ 
                のThread.sleep(5_000); 
                int型の結果= A / B; 
                のSystem.out.println(結果);
            } キャッチ(InterruptedExceptionあるE){ 
                e.printStackTrace(); 
            } 
        }); 
        
        // 例外外部スレッドキャプチャすることができ、この方法 
        t.setUncaughtExceptionHandler((スレッド、E)を- > { 
            System.out.printlnは(E)
            のSystem.out .println(スレッド); 
        }); 
        t.start(); 
    } 
}

setUncaughtExceptionHandlerを与えるsetUncaughtExceptionHandler例外処理を使用した後、スレッドは異常出力ログ情報の内側にはもはやありません

おすすめ

転載: www.cnblogs.com/zheaven/p/12071458.html
おすすめ