Lines Matching refs:__base

182     __shared_mutex_base __base;
184 _LIBCPP_INLINE_VISIBILITY shared_mutex() : __base() {}
191 _LIBCPP_INLINE_VISIBILITY void lock() { return __base.lock(); }
192 _LIBCPP_INLINE_VISIBILITY bool try_lock() { return __base.try_lock(); }
193 _LIBCPP_INLINE_VISIBILITY void unlock() { return __base.unlock(); }
196 _LIBCPP_INLINE_VISIBILITY void lock_shared() { return __base.lock_shared(); }
197 _LIBCPP_INLINE_VISIBILITY bool try_lock_shared() { return __base.try_lock_shared(); }
198 _LIBCPP_INLINE_VISIBILITY void unlock_shared() { return __base.unlock_shared(); }
201 // _LIBCPP_INLINE_VISIBILITY native_handle_type native_handle() { return __base::unlock_shared(…
208 __shared_mutex_base __base;
254 unique_lock<mutex> __lk(__base.__mut_);
255 if (__base.__state_ & __base.__write_entered_)
259 cv_status __status = __base.__gate1_.wait_until(__lk, __abs_time);
260 if ((__base.__state_ & __base.__write_entered_) == 0)
266 __base.__state_ |= __base.__write_entered_;
267 if (__base.__state_ & __base.__n_readers_)
271 cv_status __status = __base.__gate2_.wait_until(__lk, __abs_time);
272 if ((__base.__state_ & __base.__n_readers_) == 0)
276 __base.__state_ &= ~__base.__write_entered_;
277 __base.__gate1_.notify_all();
290 unique_lock<mutex> __lk(__base.__mut_);
291 …if ((__base.__state_ & __base.__write_entered_) || (__base.__state_ & __base.__n_readers_) == __ba…
295 cv_status status = __base.__gate1_.wait_until(__lk, __abs_time);
296 if ((__base.__state_ & __base.__write_entered_) == 0 &&
297 … (__base.__state_ & __base.__n_readers_) < __base.__n_readers_)
303 unsigned __num_readers = (__base.__state_ & __base.__n_readers_) + 1;
304 __base.__state_ &= ~__base.__n_readers_;
305 __base.__state_ |= __num_readers;