blocxx
|
Note that descriptions of what exceptions may be thrown assumes that object is used correctly, i.e., method preconditions are satisfied. More...
#include <NonRecursiveMutex.hpp>
Public Member Functions | |
NonRecursiveMutex () | |
Create a new NonRecursiveMutex object. | |
~NonRecursiveMutex () | |
Destroy this NonRecursiveMutex object. | |
void | acquire () |
Acquire ownership of this NonRecursiveMutex object. | |
bool | release () |
Release ownership of this NonRecursiveMutex object. | |
Private Member Functions | |
NonRecursiveMutex (const NonRecursiveMutex &) | |
NonRecursiveMutex & | operator= (const NonRecursiveMutex &) |
void | conditionPreWait (NonRecursiveMutexLockState &state) |
void | conditionPostWait (NonRecursiveMutexLockState &state) |
Private Attributes | |
NonRecursiveMutex_t | m_mutex |
Friends | |
class | Condition |
Note that descriptions of what exceptions may be thrown assumes that object is used correctly, i.e., method preconditions are satisfied.
Definition at line 52 of file NonRecursiveMutex.hpp.
BLOCXX_NAMESPACE::NonRecursiveMutex::NonRecursiveMutex | ( | ) |
Create a new NonRecursiveMutex object.
Exception | if needed system resources exhausted |
Definition at line 54 of file NonRecursiveMutex.cpp.
References BLOCXX_THROW, BLOCXX_NAMESPACE::NonRecursiveMutexImpl::createMutex(), and m_mutex.
BLOCXX_NAMESPACE::NonRecursiveMutex::~NonRecursiveMutex | ( | ) |
Destroy this NonRecursiveMutex object.
Definition at line 61 of file NonRecursiveMutex.cpp.
References BLOCXX_NAMESPACE::MutexImpl::destroyMutex(), BLOCXX_NAMESPACE::NonRecursiveMutexImpl::destroyMutex(), m_mutex, and BLOCXX_NAMESPACE::MutexImpl::releaseMutex().
BLOCXX_NAMESPACE::NonRecursiveMutex::NonRecursiveMutex | ( | const NonRecursiveMutex & | ) | [private] |
void BLOCXX_NAMESPACE::NonRecursiveMutex::acquire | ( | ) |
Acquire ownership of this NonRecursiveMutex object.
This call will block if another thread has ownership of this NonRecursiveMutex. When it returns, the current thread will be the owner of this NonRecursiveMutex object. If this thread is the owner of the mutex, then an Deadlock exception will be thrown.
no | exception |
Definition at line 70 of file NonRecursiveMutex.cpp.
References BLOCXX_NAMESPACE::MutexImpl::acquireMutex(), BLOCXX_THROW, and m_mutex.
Referenced by BLOCXX_NAMESPACE::Exception::Exception(), BLOCXX_NAMESPACE::NonRecursiveMutexLock::lock(), and BLOCXX_NAMESPACE::MutexLock::lock().
void BLOCXX_NAMESPACE::NonRecursiveMutex::conditionPostWait | ( | NonRecursiveMutexLockState & | state | ) | [private] |
no | exception |
Definition at line 98 of file NonRecursiveMutex.cpp.
References BLOCXX_THROW, BLOCXX_NAMESPACE::NonRecursiveMutexImpl::conditionPostWait(), and m_mutex.
void BLOCXX_NAMESPACE::NonRecursiveMutex::conditionPreWait | ( | NonRecursiveMutexLockState & | state | ) | [private] |
no | exception |
Definition at line 90 of file NonRecursiveMutex.cpp.
References BLOCXX_THROW, BLOCXX_NAMESPACE::NonRecursiveMutexImpl::conditionPreWait(), and m_mutex.
NonRecursiveMutex& BLOCXX_NAMESPACE::NonRecursiveMutex::operator= | ( | const NonRecursiveMutex & | ) | [private] |
bool BLOCXX_NAMESPACE::NonRecursiveMutex::release | ( | ) |
Release ownership of this NonRecursiveMutex object.
If another thread is waiting to acquire the ownership of this mutex it will stop blocking and acquire ownership when this call returns.
no | exception |
Definition at line 80 of file NonRecursiveMutex.cpp.
References BLOCXX_THROW, m_mutex, and BLOCXX_NAMESPACE::MutexImpl::releaseMutex().
Referenced by BLOCXX_NAMESPACE::NonRecursiveMutexLock::release(), BLOCXX_NAMESPACE::MutexLock::release(), and BLOCXX_NAMESPACE::Exception::~Exception().
friend class Condition [friend] |
Definition at line 88 of file NonRecursiveMutex.hpp.
NonRecursiveMutex_t BLOCXX_NAMESPACE::NonRecursiveMutex::m_mutex [private] |
Definition at line 84 of file NonRecursiveMutex.hpp.
Referenced by acquire(), conditionPostWait(), conditionPreWait(), NonRecursiveMutex(), release(), and ~NonRecursiveMutex().