検索

ホームページ  >  に質問  >  本文

Java スレッドの監視、スレッドの再起動、オブザーバー モードの問題

スレッド監視の再起動の問題について読みました
http://www.cnblogs.com/ae6623...
この記事で紹介されているオブザーバー モードは、スレッドを再起動するためのキー コードだと思います。スレッド本体の catch ブロックにあります。キャッチされない例外の場合はどうすればよいですか? Exception クラスについてはよくわかりません。すべての例外をキャッチできますか? もしキャッチできる場合、スレッド終了の見逃した理由はありますか? ? 監視できません

天蓬老师天蓬老师2733日前764

全員に返信(2)返信します

  • 漂亮男人

    漂亮男人2017-05-27 17:43:04

    Exception是所有异常类的父类, catch(Exception)すべての例外をキャッチできます

    通常、異常は次のように分類されますExceptionRuntimeException

    • Exception必须捕获, 发生异常时, 会执行catch

    • のビジネス
    • RuntimeException, 发生异常时, 如果不捕获会中断当前线程, 如果捕获和Exception同じ

    スレッド終了(死亡)の一般条件

    • スレッド業務実行完了

    • 捕捉されないスレッドが発生しましたRuntimeException

    あなたが与えた記事のスレッドを再開する本質は、前のスレッドを放置することですA已经结束了(break), 调用Observable#notifyObservers()重新启动了一个线程A1,也就是说如果没有调用Observable#notifyObservers()、スレッドは再開されません

    そのため、Observable#notifyObservers() を呼び出す前に Observable#notifyObservers()之前发生了RuntimeException が発生し、それが捕捉されなかった場合、スレッドは再起動されません

    返事
    0
  • PHP中文网

    PHP中文网2017-05-27 17:43:04

    一般に、観察されたスレッド例外が発生する場所は特定でき、特定された場所で例外がキャッチされ、スレッドが再起動されます。対象の接続方法は可能です。

    返事
    0
  • キャンセル返事