Stroller

Life has no end beyond itself

t.interrupt() t.isInterrupted Thread.interrupted()

t.interrupt()不会中断正在执行的线程,只是将线程的标志位设置成true。但是如果线程在调用sleep(),join(),wait()方法时线程被中断,则这些方法会抛出InterruptedException,在catch块中捕获到这个异常时,线程的中断标志位已经被设置成false了,因此在此catch块中调用t.isInterrupted(),Thread.interrupted()始终都为false,
而t.isInterrupted与Thread.interrupted()的区别是API中已经说明很明显了,Thread.interrupted()假如当前的中断标志为true,则调完后会将中断标志位设置成false
阅读更多
文章标签: join api
个人分类: Java|J2SE
上一篇用实例揭示notify()和notifyAll()的本质区别
下一篇好网站收集
想对作者说点什么? 我来说一句
关闭
关闭