シンプルに。JDK 1.6 または 1.7 でスレッドを停止して破棄する方法は? Javadoc によると、stop() は非推奨です。スレッドを停止/終了してから破棄する適切な方法は何ですか?
3 に答える
http://docs.oracle.com/javase/tutorial/essential/concurrency/interrupt.html http://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html#interrupt%28 %29
thread.interrupt() を呼び出します-それはあなたが探していることをするはずです
Java でスレッドを停止/強制終了することはできません。実際にできることは、何らかの状態を定期的にチェックしてからrun()
、スレッドを終了することを意味するメソッドから戻ることです。一部のブロッキング呼び出し (例: ) は、別のスレッドがメソッドで割り込むたびThread.sleep()
にスローすることによる割り込みをサポートします。InterruptedException
threadToBeInterrupted.interrupt()
インスタンス メソッドThread.currentThread().isInterrupted()
または静的メソッドのいずれかを使用して、定期的に (ブロッキング呼び出しがない場合) 中断ステータスを確認できますThread.interrupted()
。後者は中断ステータスをクリアします。