interrupted()是
static并检查当前线程。
isInterrupted()是一个实例方法,用于检查
Thread调用它的对象。
一个常见的错误是在实例上调用静态方法。
Thread myThread = ...;if (myThread.interrupted()) {} // WRONG! This might not be checking myThread.if (myThread.isInterrupted()) {} // Right!另一个区别是,这
interrupted()也清除了当前线程的状态。换句话说,如果您连续两次调用它,并且两次调用之间的线程没有中断,那么
false即使第一个调用返回了,第二个调用也将返回
true。
该Javadoc中告诉你,这样重要的事情;
经常使用它们!



