std::unique_lock
when wait aの必要性にかなり混乱していstd::conditional_variable
ます。そのため、VS 2013 のライブラリ コードを調べると、さらに混乱します。std::conditional_variable::wait()
実装方法は次のとおりです。
void wait(unique_lock<mutex>& _Lck)
{ // wait for signal
_Cnd_waitX(&_Cnd, &_Lck.mutex()->_Mtx);
}
これは何かの冗談ですか?ミューテックスを unique_lock でラップし、後で元に戻すだけですか? パラメータリストでミューテックスを使用しないのはなぜですか?