其他分享
首页 > 其他分享> > 等待唤醒机制概述

等待唤醒机制概述

作者:互联网

等待唤醒中的方法
等待唤醒机制就是用于解决线程间通信的问题的,使用到的3个方法的含义如下∶
1. wait :线程不再活动,不再参与调度,进入wait set中,因此不会浪费CPU资源,也不会去竞争锁了,这时的线程状态即是WAITING。

它还要等着别的线程执行一个特别的动作,也即是“通知( notify ) "在这个对象上等待的线程从wait set中释放出来,重新进入到调度队列( ready queue )中
2. notify:则选取所通知对象的wait set中的一个线程释放﹔例如,餐馆有空位置后,等候就餐最久的顾客最先入座。
3.notifyAll:则释放所通知对象的 wait set上的全部线程。调用wait和notify方法需要注意的细节
1.wait方法与notify方法必须要由同┐个锁对象调用。因为∶对应的锁对象可以通过notify唤醒使用同一个锁对象调用的wait方法后的线程。
2. wait方法与notify方法是属于Object类的方法的。因为︰锁对象可以是任意对象,而任意对象的所属类都是继承了Object类的。
3. wait方法与notify方法必须要在同步代码块或者是同步函数中使用。因为︰必须要通过锁对象调用这2个方法。

 

标签:set,对象,等待,方法,概述,notify,线程,唤醒,wait
来源: https://www.cnblogs.com/NanFangDaGua/p/16456011.html