# 1 楼答案 如果通过调用所述线程正在等待的对象上的notify()或notifyAll()来通知等待的线程Thread,则可能发生以下任一情况: Thread一直在对象的等待池中等待 如果指定了超时并且时间已过,Thread将变为可运行 Thread被中断,并再次成为可运行 Thread完全是因为没有原因而醒来的,即既没有通知也没有中断 最后一种情况称为伪唤醒,这是唤醒时Thread应始终检查其等待的条件是否为真的原因之一。如果没有,则Thread应该再次调用并转到wait()
# 1 楼答案
如果通过调用所述线程正在等待的对象上的
notify()
或notifyAll()
来通知等待的线程Thread
,则可能发生以下任一情况:Thread
一直在对象的等待池中等待Thread
将变为可运行Thread
被中断,并再次成为可运行Thread
完全是因为没有原因而醒来的,即既没有通知也没有中断最后一种情况称为伪唤醒,这是唤醒时
Thread
应始终检查其等待的条件是否为真的原因之一。如果没有,则Thread
应该再次调用并转到wait()