1、如果线程调用了对象的 wait()方法,那么线程便会处于该对象的等待池中,等待池中的线程不会去竞争该对象的锁。 2、notifyAl1()会唤醒所有的线程,notify()只会唤醒一个线程。 3、notifyAll()调用后,会将全部线程由等待池移到锁池,然后参与锁的竞争,竞争成功则继续执行,如果不成功则留在锁池等待锁被释放后再次参与竞争。而notify()只会唤醒一个线程,具体唤醒哪一个线程由虚拟机控制。 Was this helpful? YesNo 0 / 0 上一篇: Java中Minor GC、Major GC、Full GC 什么时候发生? 下一篇: Java中集合框架底层数据结构,都是什么样的? 发表回复 取消回复0 Your email address will not be published. 在此浏览器中保存我的显示名称、邮箱地址和网站地址,以便下次评论时使用。