Discuss / Java / 大佬说法


Topic source

3.5. Does the notifyAll() method really wake up all the threads?

Yes. All of the waiting threads wake up, but they still have to reacquire the object lock. So the threads do not run in parallel: they must each wait for the object lock to be freed. Thus, only one thread can run at a time, and only after the thread that called the notifyAll() method releases its lock.

  • 1