に失敗した私は、そのエラーを受け取っ:pthread_mutex_lock.c:62:__pthread_mutex_lock:アサーション `ミューテックス - > __データ.__オーナー== 0'
pthread_mutex_lock.c:62: __pthread_mutex_lock: Assertion `mutex->_data._owner == 0' failed.
そして、私はそれのいずれかの原因を発見することはできません。しかし、私は次のコードについてはよく分からない:
宣言:
std::mutex lock;
std::condition_variable cond;
ロック&のシーケンスは、ロックを解除:
std::unique_lock<std::mutex> lk(lock);
cond.wait(lk);
lock.unlock();
を、私はこのシーケンスを削除した場合 - すべてが正常に動作しますが、保護なしに。 unique_lock
を正しく使用するかわかりません。
将来的には短くて完全なプログラムを投稿しようとしてください.- http://sscce.org/ :) –