java中interrupt的使用
Posted Jenkov
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中interrupt的使用相关的知识,希望对你有一定的参考价值。
通常我们会有这样的需求,即停止一个线程。在java的api中有stop、suspend等方法可以达到目的,但由于这些方法在使用上存在不安全性,会带来不好的副作用,不建议被使用。具体原因可以参考Why is Thread.stop
deprecated。
在本文中,将讨论中断在java中的使用。
中断在java中主要有3个方法,interrupt(),isInterrupted()和interrupted()。
- interrupt(),在一个线程中调用另一个线程的interrupt()方法,即会向那个线程发出信号——线程中断状态已被设置。至于那个线程何去何从,由具体的代码实现决定。
- isInterrupted(),用来判断当前线程的中断状态(true or false)。
- interrupted()是个Thread的static方法,用来恢复中断状态,名字起得额
以上是关于java中interrupt的使用的主要内容,如果未能解决你的问题,请参考以下文章
java 多线程5: java 终止线程及中断机制 (stop()interrupt() interrupted()isInterrupted())
Java——多线程高并发系列之wait()notify()notifyAll()interrupt()