2011-03-30 27 views
1

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

回答

3

pthread_cond_signal文档:

的调用pthread_cond_signal()和调用pthread_cond_broadcast()函数没有效果,如果没有当前被阻塞上COND线程。

所以没有什么事情发生,如果没有等待的条件。