关闭

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

标签: joinapi
338人阅读 评论(0) 收藏 举报
分类:
t.interrupt()不会中断正在执行的线程,只是将线程的标志位设置成true。但是如果线程在调用sleep(),join(),wait()方法时线程被中断,则这些方法会抛出InterruptedException,在catch块中捕获到这个异常时,线程的中断标志位已经被设置成false了,因此在此catch块中调用t.isInterrupted(),Thread.interrupted()始终都为false,
而t.isInterrupted与Thread.interrupted()的区别是API中已经说明很明显了,Thread.interrupted()假如当前的中断标志为true,则调完后会将中断标志位设置成false
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    我的个人小站
    个人资料
    • 访问:1285095次
    • 积分:14471
    • 等级:
    • 排名:第858名
    • 原创:178篇
    • 转载:754篇
    • 译文:1篇
    • 评论:93条
    最新评论