1.Java中断机制是一种协作机制,也就是说通过中断并不能直接终止另一个线程,而需要被中断的线程自己处理中断
2.每个线程对象里都有一个boolean类型的标识, 代表着是否有中断请求
3.public staticbooleaninterrupted:判断是否“被中断”了,且将标志位清0(false)
4.若不想清0,则调用isInterrupted
5.interrupt方法是唯一能将中断状态设置为true的方法
6.处理时机:被中断线程只需在合适的时候处理即可,如果没有合适的时间点,甚至可以不处理,这时候在任务处理层面,就跟没有调用中断方法一样
7.处理方式:1、 中断状态的管理:要让方法调用栈的上层获知中断的发生
2、 中断的响应:视实际情况而定
8. stop跟interrupt一样,不会中止这些操作;当catch住stop导致的异常时,程序也可以继续执行,虽然stop本意是要停止线程,这么做会让程序行为变得更加混乱。
9. 通常,中断的使用场景有以下几个:
点击某个桌面应用中的取消按钮时;
某个操作超过了一定的执行时间限制需要中止时;
多个线程做相同的事情,只要一个线程成功其它线程都可以取消时;
一组线程中的一个或多个出现错误导致整组都无法继续时;
当一个应用或服务需要停止时。
http://www.infoq.com/cn/articles/java-interrupt-mechanism
就是对虚怀若谷谦虚谨慎八个字真正理解的人,