externally_locked_stream cloaks a reference to an stream of type Stream, and actually provides full access to that object through the get and set member functions, provided you pass a reference to a strict lock object. More...
#include <externally_locked_stream.hpp>
Public Types | |
typedef RecursiveMutex | mutex_type |
Public Member Functions | |
externally_locked_stream (Stream &stream, RecursiveMutex &mtx) BOOST_NOEXCEPT | |
Effects: Constructs an externally locked object storing the cloaked reference object. More... | |
stream_guard< Stream, RecursiveMutex > | hold () BOOST_NOEXCEPT |
Stream & | bypass () const |
void | swap (externally_locked &rhs) |
Stream && | get (strict_lock< mutex_type > &lk) |
Requires: The lk parameter must be locking the associated mtx. More... | |
const Stream && | get (strict_lock< mutex_type > &lk) const |
Stream && | get (nested_strict_lock< Lock > &lk) |
const Stream && | get (nested_strict_lock< Lock > &lk) const |
Stream && | get (Lock &lk) |
Requires: The lk parameter must be locking the associated mtx. More... | |
mutex_type * | mutex () const BOOST_NOEXCEPT |
void | lock () |
void | unlock () |
bool | try_lock () |
externally_locked_stream cloaks a reference to an stream of type Stream, and actually provides full access to that object through the get and set member functions, provided you pass a reference to a strict lock object.
|
inherited |
|
inline |
Effects: Constructs an externally locked object storing the cloaked reference object.
|
inline |
|
inlineinherited |
Requires: The lk parameter must be locking the associated mtx.
Returns: The address of the cloaked object..
Throws: lock_error if BOOST_THREAD_THROW_IF_PRECONDITION_NOT_SATISFIED is not defined and the lk parameter doesn't satisfy the preconditions
References boost::interprocess::lock_error.
Referenced by boost::operator>>().
|
inlineinherited |
References boost::interprocess::lock_error.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Requires: The lk parameter must be locking the associated mtx.
Returns: The address of the cloaked object..
Throws: lock_error if BOOST_THREAD_THROW_IF_PRECONDITION_NOT_SATISFIED is not defined and the lk parameter doesn't satisfy the preconditions
References boost::BOOST_STATIC_ASSERT(), boost::interprocess::lock_error, and boost::program_options::value().
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
References boost::externally_locked< T, MutexType >::swap().
|
inlineinherited |
|
inlineinherited |