非等待 cond_t 变量上的 pthread_cond_signal

发布于 2024-10-28 08:51:07 字数 196 浏览 0 评论 0原文

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

As a part of my program, i use the command "pthread_cond_signal(cv)".
I want to use this line to "free" the waiting cv (but i don't know if this current cv is really waiting now).
Is it OK to do so also if this cv (a pthread_cond_t variable) is not waiting? (I mean, pthread_cond_wait was not called upon it before)?
What would be the behavior in this case?
Thanks a lot.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

墟烟 2024-11-04 08:51:07

来自 pthread_cond_signal 的文档:

如果 cond 当前没有阻塞线程,则 pthread_cond_signal() 和 pthread_cond_broadcast() 函数不起作用。

因此,如果没有任何东西等待该条件,则什么也不会发生。

From the documentation of pthread_cond_signal:

The pthread_cond_signal() and pthread_cond_broadcast() functions have no effect if there are no threads currently blocked on cond.

So nothing happens if nothing is waiting on the condition.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文