Lines Matching refs:lock
44 void wait(unique_lock<mutex> &lock);
57 void wait(unique_lock<mutex> &lock, Predicate pred)
60 wait(lock);
64 cv_status wait_until(unique_lock<mutex> &lock,
67 if (!lock.owns_lock())
69 "condition_variable::wailt_until: waiting on unlocked lock");
76 pthread_cond_timedwait(&_m_cond, lock.mutex()->native_handle(), &c_abs_time);
82 bool wait_until(unique_lock<mutex> &lock,
87 if (wait_until(lock, abs_time) == cv_status::timeout)
93 cv_status wait_for(unique_lock<mutex> &lock,
96 return wait_until(lock, real_time_clock::now() + rel_time);
100 bool wait_for(unique_lock<mutex> &lock,
104 return wait_until(lock, real_time_clock::now() + rel_time, std::move(pred));
116 // Lockable is only required to have `lock()` and `unlock()`
137 _m_lock.lock();
164 void wait(Lock &lock)
168 unlocker<Lock> auto_lk(lock); // unlock here
172 } // mut.unlock(); lock.lock();
175 void wait(Lock &lock, Predicate pred)
178 wait(lock);
182 cv_status wait_until(Lock &lock,
187 unlocker<Lock> auto_lk(lock); // unlock here
194 bool wait_until(Lock &lock,
199 if (wait_until(lock, abs_time) == cv_status::timeout)
205 cv_status wait_for(Lock &lock,
208 return wait_until(lock, real_time_clock::now() + rel_time);
212 bool wait_for(Lock &lock,
216 return wait_until(lock, real_time_clock::now() + rel_time, std::move(pred));