Я получил эту ошибку:
pthread_mutex_lock.c: 62: __pthread_mutex_lock: утверждение `mutex -> _ data. _owner == 0 'не выполнено.
И я не могу найти причину этого. Однако я не уверен насчет следующего фрагмента кода:
Объявления:
std::mutex lock;
std::condition_variable cond;
Последовательность блокировок и разблокировок:
std::unique_lock<std::mutex> lk(lock);
cond.wait(lk);
lock.unlock();
Если убрать эту последовательность - все работает нормально, но без какой-либо защиты. Я не уверен, правильно ли я использую unique_lock
.