非等待cond_t变量的pthread_cond_signal

时间:2011-03-30 19:47:34

标签: c++ pthreads signals

作为我程序的一部分,我使用命令“pthread_cond_signal(cv)”。
我想用这条线“释放”等待的cv(但我不知道这个当前的cv现在是否真的在等待。) 如果这个cv(一个pthread_cond_t变量)没有等待,也可以这样做吗? (我的意思是,之前没有调用过pthread_cond_wait)? 在这种情况下会有什么行为?
非常感谢。

1 个答案:

答案 0 :(得分:3)

来自pthread_cond_signal的文档:

  

如果cond上当前没有线程被阻止,则pthread_cond_signal()和pthread_cond_broadcast()函数无效。

如果没有等待条件,那么没有任何反应。