zbb20180929 thread notify()与notifyAll()的区别
Posted super-admin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zbb20180929 thread notify()与notifyAll()的区别相关的知识,希望对你有一定的参考价值。
notify():
唤醒在此对象监视器上等待的单个线程。如果所有线程都在此对象上等待,则会选择唤醒其中一个线程。选择是任意性的,并在对实现做出决定时发生。线程通过调用其中一个 wait
方法,在对象的监视器上等待。
直到当前线程放弃此对象上的锁定,才能继续执行被唤醒的线程。被唤醒的线程将以常规方式与在该对象上主动同步的其他所有线程进行竞争;例如,唤醒的线程在作为锁定此对象的下一个线程方面没有可靠的特权或劣势。
notifyAll():
唤醒在此对象监视器上等待的所有线程。线程通过调用其中一个 wait
方法,在对象的监视器上等待。
直到当前线程放弃此对象上的锁定,才能继续执行被唤醒的线程。被唤醒的线程将以常规方式与在该对象上主动同步的其他所有线程进行竞争;例如,唤醒的线程在作为锁定此对象的下一个线程方面没有可靠的特权或劣势。
--------------------- 本文来自 PettyKoKo 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_31028891/article/details/78036234?utm_source=copy
以上是关于zbb20180929 thread notify()与notifyAll()的区别的主要内容,如果未能解决你的问题,请参考以下文章
zbb20180929 thread 自旋锁阻塞锁可重入锁悲观锁乐观锁读写锁对象锁和类锁
zbb20180913 java thread 死锁示例代码
zbb20180913 java thread JDK-Lock锁