|
blocxx
|
#include <RWLocker.hpp>
Classes | |
| struct | ThreadComparer |
Public Member Functions | |
| RWLocker () | |
| ~RWLocker () | |
| void | getReadLock (const Timeout &timeout) |
| void | getReadLock (UInt32 sTimeout, UInt32 usTimeout=0) BLOCXX_DEPRECATED |
| void | getWriteLock (const Timeout &timeout) |
| void | getWriteLock (UInt32 sTimeout, UInt32 usTimeout=0) BLOCXX_DEPRECATED |
| void | releaseReadLock () |
| void | releaseWriteLock () |
Private Member Functions | |
| RWLocker (const RWLocker &) | |
| RWLocker & | operator= (const RWLocker &) |
Private Attributes | |
| GenericRWLockImpl< Thread_t, ThreadComparer > | m_impl |
Definition at line 50 of file RWLocker.hpp.
| BLOCXX_NAMESPACE::RWLocker::RWLocker | ( | ) |
Definition at line 57 of file RWLocker.cpp.
| BLOCXX_NAMESPACE::RWLocker::~RWLocker | ( | ) |
Definition at line 61 of file RWLocker.cpp.
| TimeoutException | if the lock isn't acquired within the timeout. |
Definition at line 73 of file RWLocker.cpp.
References BLOCXX_NAMESPACE::ThreadImpl::currentThread(), m_impl, and BLOCXX_NAMESPACE::operator==().
Referenced by getReadLock(), and BLOCXX_NAMESPACE::ReadLock::ReadLock().
Definition at line 66 of file RWLocker.cpp.
References getReadLock(), BLOCXX_NAMESPACE::operator==(), and BLOCXX_NAMESPACE::Timeout::relative().
| TimeoutException | if the lock isn't acquired within the timeout. |
| DeadlockException | if this call would upgrade a read lock to a write lock and another thread is already waiting to upgrade. If this happens, the calling thread must release it's read lock in order for forward progress to be made. |
Definition at line 102 of file RWLocker.cpp.
References BLOCXX_NAMESPACE::ThreadImpl::currentThread(), m_impl, and BLOCXX_NAMESPACE::operator==().
Referenced by getWriteLock(), and BLOCXX_NAMESPACE::WriteLock::WriteLock().
Definition at line 96 of file RWLocker.cpp.
References getWriteLock(), BLOCXX_NAMESPACE::operator==(), and BLOCXX_NAMESPACE::Timeout::relative().
| void BLOCXX_NAMESPACE::RWLocker::releaseReadLock | ( | ) |
| RWLockerException | if a read lock hasn't been acquired. |
Definition at line 81 of file RWLocker.cpp.
References BLOCXX_THROW_SUBEX, BLOCXX_NAMESPACE::ThreadImpl::currentThread(), m_impl, and BLOCXX_NAMESPACE::operator==().
| void BLOCXX_NAMESPACE::RWLocker::releaseWriteLock | ( | ) |
| RWLockerException | if a write lock hasn't been acquired. |
Definition at line 110 of file RWLocker.cpp.
References BLOCXX_THROW_SUBEX, BLOCXX_NAMESPACE::ThreadImpl::currentThread(), m_impl, and BLOCXX_NAMESPACE::operator==().
|
private |
Definition at line 90 of file RWLocker.hpp.
Referenced by getReadLock(), getWriteLock(), releaseReadLock(), and releaseWriteLock().