1.isInterrupted():
isInterrupted() :状态判断,是一种条件,判断是否为中断状态,默认可以认为是false,用来做线程的中断条件;
while (!Thread.currentThread().isInterrupted()) {//一开始是未被中断,是false
System.out.println("输出线程" +Thread.currentThread().getName());
System.out.println(Thread.currentThread().isInterrupted());//true
}
2.interrupted()
interrupted():其实也是一种状态,只不过调用这个方法,会将中断状态还原,可以将中断状态设为默认值false,就是相当于没有中断;
相当于在 isInterrupted()的基础上,加了一个改变状态的操作;
区别:两者类似于电视开关状态,现在默认电视是关的,相当于线程没有中断;isInterrupted()类似于表示电视是否开着而interrupted()类似于判断电视是否开着,然后再这个基础上,不管怎么样都按下关闭按钮;
3.interrupt();表示设置中断状态,调用这个方法类似于,把电视从关着,变为开着;
验证:
会一直循坏第二段代码
网友评论