摘要: 一直以来都天真的认为线程间同步的方法只有信号量,互斥量,邮箱,消息队列,知道最近开始研究一些Linux方面的代码才发现自己是多么的很傻很天真。在Linux中还存在这一种叫做条件变量的东西。必须承认我在理解这个概念上花了很多时间,查阅了很多资料。这里主要分析如下几个问题:1. 条件变量是什么;2.为什么要和互斥量配合使用,互斥量保护的是什么;3.为什么条件变量经常会和while配合使用。1. 什么是条件变量条件变量是线程同步的一种手段。条件变量用来自动阻塞一个线程,直到条件(predicate)满足被触发为止。通常情况下条件变量和互斥锁同时使用。条件变量使我们可以睡眠等待某种条件出现。条件变量是 阅读全文
posted @ 2014-02-11 22:26 ZHX_1Q89 阅读(12270) 评论(0) 推荐(2) 编辑