gpt4 book ai didi

c++ - condition_variable 等待参数?

转载 作者:行者123 更新时间:2023-11-30 04:05:00 26 4
gpt4 key购买 nike

这是什么:

bool ready;
boost::mutex mutex;
boost::condition_variable cond;
boost::unique_lock<boost::mutex> lock(mutex);
cond.wait(lock,[]{return ready;});

第二个参数对我来说看起来很陌生。有人可以给我提示吗?

问候跃然

最佳答案

除了其他回答者之外,我还要补充一点,这显然与 condition_variables 有很大关系。

具体来说,避免虚假唤醒

条件谓词完成的是它将保证

  • 只有当条件谓词真正满足时才返回
  • 如果在等待之前条件已经满足,则不会阻塞条件变量。

这样做可以确保在适当的时间持有锁。您可以手动编写此代码,但这会很乏味且容易出错。

事实上,在很多情况下,人们只是忘记了等待(当条件已经满足时等待简历)和虚假唤醒。

关于c++ - condition_variable 等待参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23513659/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com