提升condition_variable参数错误

nic*_*las 3 boost condition-variable recursive-mutex

我在下面的代码中遇到错误.

recursive_mutex m_RecurMutex;
condition_variable cond;
unique_lock<recursive_mutex> lock(m_RecurMutex);
cond.wait(lock); // Error Here. 
Run Code Online (Sandbox Code Playgroud)

导致此错误的原因是什么?

小智 14

您应该使用condition_variable_any此版本的语义相同,但它允许所有类型的锁类型.condition_variable然而,据说常规可能更快.