Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET Apache Qpid Documentation
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
qpid::sys::RWlock Class Reference

RW lock. More...

#include <qpid/sys/posix/Mutex.h>

List of all members.

Public Types

typedef
::qpid::sys::ScopedRlock
< RWlock
ScopedRlock
typedef
::qpid::sys::ScopedWlock
< RWlock
ScopedWlock
typedef
::qpid::sys::ScopedRlock
< RWlock
ScopedRlock
typedef
::qpid::sys::ScopedWlock
< RWlock
ScopedWlock

Public Member Functions

 RWlock ()
 ~RWlock ()
void wlock ()
void rlock ()
void unlock ()
void trywlock ()
void tryrlock ()
 RWlock ()
 ~RWlock ()
void wlock ()
void rlock ()
void unlock ()
void trywlock ()
void tryrlock ()

Protected Member Functions

bool & write (void)

Protected Attributes

pthread_rwlock_t rwlock
boost::shared_mutex rwMutex
boost::thread_specific_ptr< bool > haveWrite

Detailed Description

RW lock.

Definition at line 57 of file Mutex.h.


Member Typedef Documentation

Definition at line 61 of file Mutex.h.

Definition at line 68 of file Mutex.h.

Definition at line 69 of file Mutex.h.

Definition at line 62 of file Mutex.h.


Constructor & Destructor Documentation

qpid::sys::RWlock::RWlock ( ) [inline]

Definition at line 128 of file Mutex.h.

References QPID_POSIX_ASSERT_THROW_IF, and rwlock.

qpid::sys::RWlock::~RWlock ( ) [inline]

Definition at line 132 of file Mutex.h.

References QPID_POSIX_ABORT_IF, and rwlock.

qpid::sys::RWlock::RWlock ( ) [inline]
qpid::sys::RWlock::~RWlock ( ) [inline]

Member Function Documentation

void qpid::sys::RWlock::rlock ( ) [inline]

Definition at line 140 of file Mutex.h.

References QPID_POSIX_ASSERT_THROW_IF, and rwlock.

void qpid::sys::RWlock::rlock ( ) [inline]
void qpid::sys::RWlock::tryrlock ( ) [inline]

Definition at line 152 of file Mutex.h.

References QPID_POSIX_ASSERT_THROW_IF, and rwlock.

void qpid::sys::RWlock::tryrlock ( ) [inline]
void qpid::sys::RWlock::trywlock ( ) [inline]
void qpid::sys::RWlock::trywlock ( ) [inline]

Definition at line 148 of file Mutex.h.

References QPID_POSIX_ASSERT_THROW_IF, and rwlock.

void qpid::sys::RWlock::unlock ( ) [inline]
void qpid::sys::RWlock::unlock ( ) [inline]

Definition at line 144 of file Mutex.h.

References QPID_POSIX_ASSERT_THROW_IF, and rwlock.

void qpid::sys::RWlock::wlock ( ) [inline]
void qpid::sys::RWlock::wlock ( ) [inline]

Definition at line 136 of file Mutex.h.

References QPID_POSIX_ASSERT_THROW_IF, and rwlock.

bool & qpid::sys::RWlock::write ( void  ) [inline, protected]

Definition at line 177 of file Mutex.h.

References haveWrite.


Member Data Documentation

boost::thread_specific_ptr<bool> qpid::sys::RWlock::haveWrite [protected]

Definition at line 81 of file Mutex.h.

Referenced by write().

pthread_rwlock_t qpid::sys::RWlock::rwlock [protected]

Definition at line 73 of file Mutex.h.

Referenced by rlock(), RWlock(), tryrlock(), trywlock(), unlock(), wlock(), and ~RWlock().

boost::shared_mutex qpid::sys::RWlock::rwMutex [protected]

Definition at line 80 of file Mutex.h.


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

Qpid C++ API Reference
Generated on Mon Aug 22 2011 for Qpid C++ Client API by doxygen 1.7.4