相关疑难解决方法(0)

条件变量的谓词

我是多线程的新手.在使用条件变量在C++ 11中编写多线程代码时,我使用以下构造

while(predicate) {
    cond_var.wait(&lock);
}
Run Code Online (Sandbox Code Playgroud)

但是,我一直在阅读Deitel关于操作系统的第三版书(第6页),其中使用了以下结构

if(predicate) {
    cond_var.wait(&lock);
}
Run Code Online (Sandbox Code Playgroud)

那么,有什么区别?为什么这本书不能用呢?是不是虚假的称呼问题?

c++ concurrency multithreading condition-variable

4
推荐指数
1
解决办法
4307
查看次数