pthread_cond_broadcast和pthread_cond_wait的使用

关于Posix通用线程的概述请参考 POSIX 线程详解

1. Pthread_cond_broadcast的位置

pthread_cond_broadcast和pthread_cond_wait的使用有这样的一篇:

http://fengmenghello.blog.163.com/blog/static/1646203302010718101712356/

笔者建议在Linux上pthread_cond_broadcast放在lock/unlock中间,但是从我的使用经验来看,放在中间可能会导致等待的线程比较晚解锁。

 

2. Pthread_cond_wait的使用

pthread_cond_wait已经包含了unlock, wait,  lock的动作,所以在其前面不需要加unlock, 在后面不需要加lock。可以直接和 pthread_mutex_unlock配对。

 

posted @ 2012-01-27 22:10  Objdump  阅读(1997)  评论(0编辑  收藏  举报