java condition
java condition是怎样的呢?下面就让我们一起来了解一下吧:
condition 介绍
Condition是在java1.5中才出现的,它主要是用来替代传统的Object的wait()、notify()实现线程间的协作,相比较使用Object的wait()、notify(),使用Condition的await()、signal()这种方式实现线程间协作会更加安全与高效。
因此一般情况下是比较推荐使用Condition的,并且阻塞队列实际上也就是使用了Condition来模拟线程间的协作。
Condition其实就是个接口,基本的方法就是await()与signal()方法;
Condition比较依赖于Lock接口,生成一个Condition的基本代码,即lock.newCondition()。
若是想要调用Condition的await()和signal()方法,都必须要在lock保护之内,也就是说必须要在lock.lock()和lock.unlock之间才能够使用的。
说明:
1、condition中的await()对应Object的wait();
2、Condition中的signal()对应Object的notify();
3、Condition中的signalAll()对应Object的notifyAll()。
需要注意的是,Condition的执行方式,是当在线程Consumer中调用await方法后,线程Consumer将会释放锁,并且将自己沉睡,等待被唤醒,线程Producer获取到锁之后,就会开始运行,完毕后,会调用Condition的signalall方法,唤醒线程Consumer,线程Consumer即可恢复执行。
以上就是小编的分享了,希望能够帮助到大家。
生活百科
- 张卫健现在的处境 张卫健为什么如此落魄
- 何润东秃顶:44岁何润东近照曝光罕见秃头
- 草图君王帅个人资料 草图君王帅是干什么的
- 张铭恩女朋友张鑫图片 张铭恩豆得儿什么关系
- 张翰看见机场郑爽杨洋 张翰再次见到郑爽机场偶遇
- 周杰老婆刘虹个人资料 周杰结婚了吗老婆名字叫什么是干嘛的
- 邓伦对迪丽热巴特别好 迪丽热巴邓伦是同学吗
- 杨子暴打黄圣依天涯 黄圣依杨子天涯八卦真实情况
- papi酱为什么被封杀 网红papi酱为何被禁封杀
- 于朦胧的背景太恐怖了 曝于朦胧是单亲家庭
- 彭小苒整容前 彭小苒是不是整容了怎么不一样
- 祝晓晗的父亲资料 祝晓晗的亲爸爸是谁真实父母介绍
- 禁忌女孩泰国讲什么
- 艾克里里的身高好假 艾克里里个人资料身高是哪里人
- 赵树海两个儿子 赵树海有几个孙子大儿子是谁
- 北京壹心娱乐旗下艺人 壹心娱乐旗下艺人名单