My thread does not need to be locked. std::unique_lock
locks thread on construction. I am simply using cond_var.wait()
as a way to avoid busy waiting. I have essentially circumvented the auto-locking by putting the unique_lock within a tiny scope:
{
std::unique_lock<std::mutex> dispatch_ul(dispatch_mtx);
pq_cond.wait(dispatch_ul);
}
Is there possibly a better option to avoid the unnecessary auto-lock functionality from the unique_lock? I'm looking for a mutexless option to simply signal the thread, I am aware of std::condition_variable_any but that yet again requires a mutex of sorts.
Aucun commentaire:
Enregistrer un commentaire