C++11 线程 : notify_all() or notify_one() when I only have one?

标签 c++ c++11 condition-variable

我的线程作为链表运行(有重叠,因此线程),实现与时间线没有什么不同的东西。每个条件变量解锁链表中的下一个线程。

当我只有一个要通知时,我应该使用 notify_all() 还是 notify_one()

最佳答案

使用 notify_one 除非您的代码使 notify_all 更易于阅读(例如,您构造了一个列表,其中恰好有一个元素)。

关于C++11 线程 : notify_all() or notify_one() when I only have one?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14431159/

相关文章:

c++ - ICreateDevEnum 在 32 位上工作但在 64 位上失败

c++ - C++ 11条件变量语义

c - 使用 pthread_cond_wait 和 pthread_cond_signal 保证 yield

c++ - 如何在 C++11 中访问 double 的 pair<pair<string,string>,double>

c++ - 线程安全队列和虚假唤醒

c++ - 如何检查对象是否为常量?

c++ - 如何从链表中删除这些节点?

c++ - 如何在 Windows 上的 CMakelist.txt 中包含 Eigen 库

c++ - 将 "policy"附加到函数参数

c++ - std::vector 在 move 元素时做额外的操作