贾文泽 发表于 2013-2-23 09:13
最后我大概按我的理解说下 wait 和 interrupt 方法
wait(); 当对象执行这个方法时,线程被阻塞,暂时停 ...
非常感谢,很详细,异常的地方不是太了解,我的理解是:wait()方法里定义的有异常代码,一旦等待状态被interrupt()方法清除,就会抛出一个异常信息,可以抛出或使用try() ,catch()来进行解决,,,,,
我不明白的是interrupte()方法里应该是怎么定义的呢?为什么说:强制使线程恢复到正常运行状态,并抛出一个中断信息,也就是说这句话应该怎么去理解呢?或者说他里面的代码应该是什么样子的呢?如果线程在调用 Object 类的 wait()、wait(long) 或 wait(long, int) 方法,或者该类的 join()、join(long)、join(long, int)、sleep(long) 或 sleep(long, int) 方法过程中受阻,则其中断状态将被清除,它还将收到一个 InterruptedException。 |