pthread_cond_broadcast 条件唤醒问题
按照linux kernel manual说的pthread_cond_broadcast可以唤醒当前所有等待此条件的线程。
可是我在实际使用时却发现它只唤醒了众多等下线程中的一个(按线程建立和等待顺序中的第一个)。请问有大大遇到过这种情况或是知道原因能为小弟解答一下吗?
另外,对于这个函数的使用我也有些疑惑,使用pthread_cond_signal需要获取保护当前条件便利的互斥锁后再使用,那对于一次唤醒多个等待该条件的线程这种情况,要如何处理这里的互斥锁问题呢?