libstdc++
std::shared_lock< _Mutex > Class Template Reference

Public Types

typedef _Mutex mutex_type
 

Public Member Functions

 shared_lock (mutex_type &__m)
 
 shared_lock (mutex_type &__m, adopt_lock_t)
 
template<typename _Rep , typename _Period >
 shared_lock (mutex_type &__m, const chrono::duration< _Rep, _Period > &__rel_time)
 
template<typename _Clock , typename _Duration >
 shared_lock (mutex_type &__m, const chrono::time_point< _Clock, _Duration > &__abs_time)
 
 shared_lock (mutex_type &__m, defer_lock_t) noexcept
 
 shared_lock (mutex_type &__m, try_to_lock_t)
 
 shared_lock (shared_lock &&__sl) noexcept
 
 shared_lock (shared_lock const &)=delete
 
void lock ()
 
mutex_type * mutex () const noexcept
 
 operator bool () const noexcept
 
shared_lockoperator= (shared_lock &&__sl) noexcept
 
shared_lockoperator= (shared_lock const &)=delete
 
bool owns_lock () const noexcept
 
mutex_type * release () noexcept
 
void swap (shared_lock &__u) noexcept
 
bool try_lock ()
 
template<typename _Rep , typename _Period >
bool try_lock_for (const chrono::duration< _Rep, _Period > &__rel_time)
 
template<typename _Clock , typename _Duration >
bool try_lock_until (const chrono::time_point< _Clock, _Duration > &__abs_time)
 
void unlock ()
 

Detailed Description

template<typename _Mutex>
class std::shared_lock< _Mutex >

shared_lock

Definition at line 715 of file shared_mutex.

Member Typedef Documentation

◆ mutex_type

template<typename _Mutex >
typedef _Mutex std::shared_lock< _Mutex >::mutex_type

Definition at line 718 of file shared_mutex.

Constructor & Destructor Documentation

◆ shared_lock() [1/8]

template<typename _Mutex >
std::shared_lock< _Mutex >::shared_lock ( )
inlinenoexcept

Definition at line 722 of file shared_mutex.

◆ shared_lock() [2/8]

template<typename _Mutex >
std::shared_lock< _Mutex >::shared_lock ( mutex_type &  __m)
inlineexplicit

Definition at line 725 of file shared_mutex.

◆ shared_lock() [3/8]

template<typename _Mutex >
std::shared_lock< _Mutex >::shared_lock ( mutex_type &  __m,
defer_lock_t   
)
inlinenoexcept

Definition at line 729 of file shared_mutex.

◆ shared_lock() [4/8]

template<typename _Mutex >
std::shared_lock< _Mutex >::shared_lock ( mutex_type &  __m,
try_to_lock_t   
)
inline

Definition at line 732 of file shared_mutex.

◆ shared_lock() [5/8]

template<typename _Mutex >
std::shared_lock< _Mutex >::shared_lock ( mutex_type &  __m,
adopt_lock_t   
)
inline

Definition at line 735 of file shared_mutex.

◆ shared_lock() [6/8]

template<typename _Mutex >
template<typename _Clock , typename _Duration >
std::shared_lock< _Mutex >::shared_lock ( mutex_type &  __m,
const chrono::time_point< _Clock, _Duration > &  __abs_time 
)
inline

Definition at line 739 of file shared_mutex.

◆ shared_lock() [7/8]

template<typename _Mutex >
template<typename _Rep , typename _Period >
std::shared_lock< _Mutex >::shared_lock ( mutex_type &  __m,
const chrono::duration< _Rep, _Period > &  __rel_time 
)
inline

Definition at line 745 of file shared_mutex.

◆ ~shared_lock()

template<typename _Mutex >
std::shared_lock< _Mutex >::~shared_lock ( )
inline

Definition at line 750 of file shared_mutex.

◆ shared_lock() [8/8]

template<typename _Mutex >
std::shared_lock< _Mutex >::shared_lock ( shared_lock< _Mutex > &&  __sl)
inlinenoexcept

Definition at line 759 of file shared_mutex.

Member Function Documentation

◆ lock()

template<typename _Mutex >
void std::shared_lock< _Mutex >::lock ( )
inline

Definition at line 770 of file shared_mutex.

◆ mutex()

template<typename _Mutex >
mutex_type * std::shared_lock< _Mutex >::mutex ( ) const
inlinenoexcept

Definition at line 831 of file shared_mutex.

◆ operator bool()

template<typename _Mutex >
std::shared_lock< _Mutex >::operator bool ( ) const
inlineexplicitnoexcept

Definition at line 829 of file shared_mutex.

◆ operator=()

template<typename _Mutex >
shared_lock & std::shared_lock< _Mutex >::operator= ( shared_lock< _Mutex > &&  __sl)
inlinenoexcept

Definition at line 763 of file shared_mutex.

◆ owns_lock()

template<typename _Mutex >
bool std::shared_lock< _Mutex >::owns_lock ( ) const
inlinenoexcept

Definition at line 827 of file shared_mutex.

◆ release()

template<typename _Mutex >
mutex_type * std::shared_lock< _Mutex >::release ( )
inlinenoexcept

Definition at line 819 of file shared_mutex.

◆ swap()

template<typename _Mutex >
void std::shared_lock< _Mutex >::swap ( shared_lock< _Mutex > &  __u)
inlinenoexcept

Definition at line 812 of file shared_mutex.

◆ try_lock()

template<typename _Mutex >
bool std::shared_lock< _Mutex >::try_lock ( )
inline

Definition at line 778 of file shared_mutex.

◆ try_lock_for()

template<typename _Mutex >
template<typename _Rep , typename _Period >
bool std::shared_lock< _Mutex >::try_lock_for ( const chrono::duration< _Rep, _Period > &  __rel_time)
inline

Definition at line 786 of file shared_mutex.

◆ try_lock_until()

template<typename _Mutex >
template<typename _Clock , typename _Duration >
bool std::shared_lock< _Mutex >::try_lock_until ( const chrono::time_point< _Clock, _Duration > &  __abs_time)
inline

Definition at line 794 of file shared_mutex.

◆ unlock()

template<typename _Mutex >
void std::shared_lock< _Mutex >::unlock ( )
inline

Definition at line 801 of file shared_mutex.


The documentation for this class was generated from the following file: