xiaow(小为):
看来你还没有认识到我的问题在那里:
如果在你的示例代码中,"do you want to do..."部分程序停滞怎么办?这时while循环的条件根本不会被执行,因而也不可能退出程序(你这个方法和jdk文档提供的方法是类似的)。
虽然上述事件的发生概率较小,但是作为企业级应用,应该考虑到的。
public void run(){
try{
while(!interrupted()){//判断自己是否最近被中断,以防母线程中断自己时,自己
//未处于睡眠或等待状态。
do you want to do ...;
}
}
catch(InterruptedException e){ //线程睡眠或等待时被中断
}
}