码迷,mamicode.com
首页 > 其他好文 > 详细

zbb20180929 thread notify()与notifyAll()的区别

时间:2018-09-30 00:00:28      阅读:252      评论:0      收藏:0      [点我收藏+]

标签:wait   放弃   没有   其他   对象   read   竞争   一个   方式   

notify():

唤醒在此对象监视器上等待的单个线程。如果所有线程都在此对象上等待,则会选择唤醒其中一个线程。选择是任意性的,并在对实现做出决定时发生。线程通过调用其中一个 wait 方法,在对象的监视器上等待。

直到当前线程放弃此对象上的锁定,才能继续执行被唤醒的线程。被唤醒的线程将以常规方式与在该对象上主动同步的其他所有线程进行竞争;例如,唤醒的线程在作为锁定此对象的下一个线程方面没有可靠的特权或劣势。

 

notifyAll():

唤醒在此对象监视器上等待的所有线程。线程通过调用其中一个 wait 方法,在对象的监视器上等待。

直到当前线程放弃此对象上的锁定,才能继续执行被唤醒的线程。被唤醒的线程将以常规方式与在该对象上主动同步的其他所有线程进行竞争;例如,唤醒的线程在作为锁定此对象的下一个线程方面没有可靠的特权或劣势。

--------------------- 本文来自 PettyKoKo 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_31028891/article/details/78036234?utm_source=copy 

zbb20180929 thread notify()与notifyAll()的区别

标签:wait   放弃   没有   其他   对象   read   竞争   一个   方式   

原文地址:https://www.cnblogs.com/super-admin/p/9726923.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!