interrupt

interrupt() 方法:         给线程设置一个中断标志,线程仍会继续运行。哪个线程调用了这个方法,就给哪个线程设置一个中断标记位。

interrupted() 方法:     返回线程的中断标记位,(true 或者是 false), 并清除中断标记位,将中断标记位设置为false;

isInterrupted() 方法:     返回线程的中断标记位,不会清除中断状态。

 

看到了吗!!! 三个方法都是围绕着中断标记位展开的!!!! 根本就没有真正中断线程,而是线程通过判断自己的中断标志位来进行后续的操作。完全由程序自己来进行控制的。比如,很多时候会看到,检测到线程的中断标记位为true,就会抛出异常!!!

 

参考文档:

https://blog.csdn.net/qq_39682377/article/details/81449451

posted @ 2020-07-31 14:58  你眼里的星辰  阅读(741)  评论(0)    收藏  举报