读书人

pthread_cond_broadcast,该怎么处理

发布时间: 2012-03-23 12:06:21 作者: rapoo

pthread_cond_broadcast
为什么pthread_cond_broadcast可以唤醒所有的线程?根据pthread_cond_wait函数的说明,pthread_cond_wait函数返回时,必定对互斥量加锁了!如果多个线程醒来了(从pthread_cond_wait中返回),那么是谁占有了互斥锁?

[解决办法]
一个一个来啊,1先醒过来占了锁,判断一下while()能退出就退出放掉锁,不能退出再wait也一样放掉了锁.

2再醒来..依次醒呗,.
[解决办法]
先来先服务!

读书人网 >C++

热点推荐