interrupt
原理
interrupt是Thread中的一个方法, 其本质是将线程中的中断标志设置为true, 而不是直接中断. 设置后, 根据线程的状态而有不同的后续操作....isInterrupted()) {
// todo
}
}
isInterrupted()可以返回中断标志位的值, 表示运行中的线程是否被Thread.Interrupt()调用...中断状态与InterruptedException
调用Interrupt方法后, 可以中断掉线程. 这里的中断是指:
线程变成”中断状态”....因为我们知道, 如果调用了interrput方法, 但是线程的状态并不是在join, wait, sleep的话, 并不会抛出InterruptedException, 而是将interrupt标志位设为...注意
处于wait态中的线程在被interrupt后, 会跳出wait set, 并在下次获得Object锁的时候, 才会抛出InterruptedException.