ホームページ  >  記事  >  Java  >  Java マルチスレッド プログラミングでサブスレッド例外をキャッチする例

Java マルチスレッド プログラミングでサブスレッド例外をキャッチする例

高洛峰
高洛峰オリジナル
2017-01-18 14:53:581911ブラウズ

サブスレッド例外は try catch ではキャッチできません。Thread オブジェクトには、スレッド内で生成された例外を取得するための setUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh) メソッドが用意されています。

package threads;
import java.lang.Thread.UncaughtExceptionHandler;
public class TextException
{
  public static void main(String[] args)
  {
    Test test = new Test();
    test.setUncaughtExceptionHandler(new UncaughtExceptionHandler()
    {
      public void uncaughtException(Thread t, Throwable e)
      {
        System.out.println(t.getName() + " : " + e.getMessage());
        // TODO
      }
    });
  }
  public static class Test extends Thread
  {
    public Test()
    {
    }
    public void run()
    {
      throw new RuntimeException("just a test");
    }
  }
}

サブスレッド例外をキャッチする Java マルチスレッド プログラミングの例に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。