Linux 2. 关于pthread_cond_signal 唤醒两个线程的问题
这里贴出一个非常经典的关于多线程条件变量互斥锁的案例,即生产消费者模型。
我想说的是这里的while循环判断pthread_cond_wait,为何不能使用if的问题。
根据man查询到pthread_cond_signal这个函数至少会唤起1个线程,也就是说也有可能会唤起两个及以上个线程。因此,如果这里使用if而不是while,那么当被唤起两个线程时(考虑争夺仅有的一个资源时的情况),会发生
原创
2017-06-05 10:20:30 ·
6798 阅读 ·
7 评论