Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::upgrade_lock< Mutex > Class Template Reference

#include <lock_types.hpp>

Public Types

typedef Mutex mutex_type
 

Public Member Functions

 upgrade_lock () BOOST_NOEXCEPT
 
 upgrade_lock (Mutex &m_)
 
 upgrade_lock (Mutex &m_, adopt_lock_t)
 
 upgrade_lock (Mutex &m_, defer_lock_t) BOOST_NOEXCEPT
 
 upgrade_lock (Mutex &m_, try_to_lock_t)
 
 upgrade_lock (BOOST_THREAD_RV_REF_BEG upgrade_lock< Mutex > BOOST_THREAD_RV_REF_END other) BOOST_NOEXCEPT
 
BOOST_THREAD_EXPLICIT_LOCK_CONVERSION upgrade_lock (BOOST_THREAD_RV_REF_BEG unique_lock< Mutex > BOOST_THREAD_RV_REF_END other)
 
upgrade_lockoperator= (BOOST_THREAD_RV_REF_BEG upgrade_lock< Mutex > BOOST_THREAD_RV_REF_END other)
 
upgrade_lockoperator= (BOOST_THREAD_RV_REF_BEG unique_lock< Mutex > BOOST_THREAD_RV_REF_END other)
 
void swap (upgrade_lock &other) BOOST_NOEXCEPT
 
Mutex * mutex () const BOOST_NOEXCEPT
 
Mutex * release () BOOST_NOEXCEPT
 
 ~upgrade_lock ()
 
void lock ()
 
bool try_lock ()
 
void unlock ()
 
 operator bool () const BOOST_NOEXCEPT
 
bool owns_lock () const BOOST_NOEXCEPT
 

Protected Attributes

Mutex * m
 
bool is_locked
 

Friends

class shared_lock< Mutex >
 
class unique_lock< Mutex >
 

Member Typedef Documentation

template<typename Mutex >
typedef Mutex boost::upgrade_lock< Mutex >::mutex_type

Constructor & Destructor Documentation

template<typename Mutex >
boost::upgrade_lock< Mutex >::upgrade_lock ( )
inline
template<typename Mutex >
boost::upgrade_lock< Mutex >::upgrade_lock ( Mutex &  m_)
inlineexplicit
template<typename Mutex >
boost::upgrade_lock< Mutex >::upgrade_lock ( Mutex &  m_,
adopt_lock_t   
)
inline
template<typename Mutex >
boost::upgrade_lock< Mutex >::upgrade_lock ( Mutex &  m_,
defer_lock_t   
)
inline
template<typename Mutex >
boost::upgrade_lock< Mutex >::upgrade_lock ( Mutex &  m_,
try_to_lock_t   
)
inline
template<typename Mutex >
boost::upgrade_lock< Mutex >::upgrade_lock ( BOOST_THREAD_RV_REF_BEG upgrade_lock< Mutex > BOOST_THREAD_RV_REF_END  other)
inline
template<typename Mutex >
BOOST_THREAD_EXPLICIT_LOCK_CONVERSION boost::upgrade_lock< Mutex >::upgrade_lock ( BOOST_THREAD_RV_REF_BEG unique_lock< Mutex > BOOST_THREAD_RV_REF_END  other)
inline
template<typename Mutex >
boost::upgrade_lock< Mutex >::~upgrade_lock ( )
inline

Member Function Documentation

template<typename Mutex >
Mutex* boost::upgrade_lock< Mutex >::mutex ( ) const
inline
template<typename Mutex >
boost::upgrade_lock< Mutex >::operator bool ( ) const
inlineexplicit
template<typename Mutex >
upgrade_lock& boost::upgrade_lock< Mutex >::operator= ( BOOST_THREAD_RV_REF_BEG upgrade_lock< Mutex > BOOST_THREAD_RV_REF_END  other)
inline
template<typename Mutex >
upgrade_lock& boost::upgrade_lock< Mutex >::operator= ( BOOST_THREAD_RV_REF_BEG unique_lock< Mutex > BOOST_THREAD_RV_REF_END  other)
inline
template<typename Mutex >
Mutex* boost::upgrade_lock< Mutex >::release ( )
inline
template<typename Mutex >
void boost::upgrade_lock< Mutex >::swap ( upgrade_lock< Mutex > &  other)
inline
template<typename Mutex >
void boost::upgrade_lock< Mutex >::unlock ( void  )
inline

Friends And Related Function Documentation

template<typename Mutex >
friend class shared_lock< Mutex >
friend
template<typename Mutex >
friend class unique_lock< Mutex >
friend

Member Data Documentation

template<typename Mutex >
bool boost::upgrade_lock< Mutex >::is_locked
protected
template<typename Mutex >
Mutex* boost::upgrade_lock< Mutex >::m
protected

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