FreeBSD Manual Pages
std::shared_lock(3) C++ Standard Libary std::shared_lock(3) NAME std::shared_lock - std::shared_lock Synopsis Defined in header <shared_mutex> template< class Mutex > (since C++14) class shared_lock; The class shared_lock is a general-purpose shared mutex ownership wrapper allowing deferred locking, timed locking and transfer of lock ownership. Locking a shared_lock locks the associated shared mutex in shared mode (to lock it in exclusive mode, std::unique_lock can be used) The shared_lock class is movable, but not copyable -- it meets the requirements of MoveConstructible and MoveAssignable but not of CopyConstructible or CopyAssignable. shared_lock meets the Lockable requirements. If Mutex meets the SharedTimedLockable requirements, shared_lock also meets TimedLockable requirements. In order to wait in a shared mutex in shared ownership mode, std::condition_variable_any can be used (std::condition_variable re- quires std::unique_lock and so can only wait in unique ownership mode) Template parameters Mutex - the type of the shared mutex to lock. The type must meet the SharedLockable requirements Member types Type Definition mutex_type Mutex Member functions constructor constructs a shared_lock, optionally locking the sup- plied mutex (public member function) destructor unlocks the associated mutex (public member function) operator= unlocks the mutex, if owned, and acquires ownership of another (public member function) Shared locking lock locks the associated mutex (public member function) try_lock tries to lock the associated mutex (public member function) try_lock_for tries to lock the associated mutex, for the specified duration (public member function) try_lock_until tries to lock the associated mutex, until a specified time point (public member function) unlock unlocks the associated mutex (public member function) Modifiers swap swaps the data members with another shared_lock (public member function) release disassociates the mutex without unlocking (public member function) Observers mutex returns a pointer to the associated mutex (public member function) owns_lock tests whether the lock owns its associated mutex (public member function) operator bool tests whether the lock owns its associated mutex (public member function) Non-member functions std::swap(std::shared_lock) specialization of std::swap for shared_lock (C++14) (function template) Defect reports The following behavior-changing defect reports were applied retroac- tively to previously published C++ standards. DR Applied to Behavior as published Correct behavior LWG 2981 C++17 redundant deduction guide from removed shared_lock<Mutex> was provided http://cppreference.com 2022.07.31 std::shared_lock(3)
NAME | Synopsis | Template parameters | Member types | Member functions | Shared locking | Modifiers | Observers | Non-member functions
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::shared_lock&sektion=3&manpath=FreeBSD+Ports+15.0>
