操作系统之条件变量

条件变量

在并发程序设计中,锁是必需的一个概念,但不是唯一的。还有一个概念叫做条件变量

在很多情况下,线程需要检查某一条件满足之后,才会继续运行。一个简单的方案是自旋1知道条件满足,但是极其低效。那么,线程应该如何等待一个条件?答案就是条件变量。

条件变量是一个队列,当条件不满足的时候,线程可以把自己加入队列,等待该条件。另外一个线程,当它改变了上述条件时,就可以唤醒一个或多个等待线程,让它们继续执行。


  1. 线程通过时钟中断抢占CPU,不断的检查某个条件是否成立 ↩︎

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值