【发布时间】:2020-05-17 21:49:29
【问题描述】:
假设在多线程环境中有 5 个线程 t1,t2,t3,t4,t5.... 线程 t1,t2,t3,t4 调用 wait() 方法(在同步块内)并且只有线程 t5 调用notify() 方法然后哪个线程将获得优先权再次获得临界区的锁。
【问题讨论】:
-
你读过Javadoc for
o.notify()吗?我认为第三句话回答了你的问题。 -
当
o.notify()被调用时,一个等待该对象监视器(如果有的话)的线程将被唤醒。请注意,您仍然可能有一些竞争条件;例如。在任何线程调用 wait() 之前调用对象上的 notify() .. -
欢迎来到 StackOverflow。为什么不尝试编写和运行代码? :)
标签: java multithreading wait notify thread-synchronization