1.线程四种状态:新建,就绪,阻塞,死亡.其中,就绪状态,只要调度片把时间片分配给线程,线程就可以运行.也就是说,在任意时刻,线程可以运行也可以不运行.这不同于死亡和阻塞状态.
2.使用Executor.submit()而不是executor()来启动任务,,就可以获得任务的上下文,submit()将返回Future,可以调用Future.cancel(true)来中断任务(P695-696)
Future<?> f = exec.submit(r);
f.cancel(true); // Interrupts if running
3.无法中断下正在试图获取synchronized或者试图执行I/O操作的线程,一个笨拙但是有效的方法在关闭任务在其上发生阻塞的底层资源(如InputStream.close();).
4.18章各种NIO提供了更人性化的I/O中断.被阻塞的NIO通道会自动地响应中断.
5.synchronized方法不可被中断,但是ReentrantLock上阻塞的任务具备可以被中断的能力.
6.Thread.interrupt可以用来检查中断.