検索

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

java的中断线程interrupt()方法,为什么还要把run()方法走完呢?那中断线程不就没有意义了吗?

当线程调用interrupt方法后,为什么还要运行完run方法呢?那中断线程还有什么意义?

高洛峰高洛峰2885日前795

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

  • 怪我咯

    怪我咯2017-04-18 09:35:34

    Java の割り込みメカニズムは協調メカニズムです。つまり、割り込みによって別のスレッドを直接終了することはできず、割り込みを受けたスレッドは独自に割り込みを処理する必要があります。これは、家庭で親が子供に健康に気をつけるように言うのと同じですが、子供が健康に気を付けるかどうか、またどのように気を付けるかは完全に親次第です。

    Java 割り込みメカニズムの詳細な分析

    返事
    0
  • 黄舟

    黄舟2017-04-18 09:35:34

    Java スレッドには run メソッドの完了を防ぐ方法もあります。それが stop メソッドですが、このメソッドは jdk によって放棄されました。スレッドがデータベースやファイルの書き込みなど、どこかのデータを変更していて、stop メソッドが何の説明もなくスレッドを強制終了した場合、データは混沌としたり、一貫性がなくなったりしますか?したがって、Java スレッドは割り込みメカニズムを使用し、この割り込みをキャプチャして、割り込み後に必要な操作を実行できます。

    返事
    0
  • キャンセル返事