Notify和NotifyAll仅影响阻塞状态的线程

时间:2013-02-27 15:37:14

标签: java multithreading

enter image description here

我的理解是当我们调用object.notify(一个线程)和object.notifyAll(所有线程)时,会通知处于阻塞状态的线程。

Runnable状态线程没有收到任何通知。

1 个答案:

答案 0 :(得分:2)

  

正在通知处于阻塞状态的线程。

排序。 notify唤醒处于WAITING状态的线程。

然后通知将它们置于BLOCKED状态,直到它们可以获取他们正在等待的对象监视器。在初始synchronized电话中已经被阻止的对象不受影响。

RUNNABLE线程不会被通知,因为它们不在监视器上等待。