BLOCXX_NAMESPACE::NonRecursiveMutex Class Reference

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>

List of all members.

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 &)
NonRecursiveMutexoperator= (const NonRecursiveMutex &)
void conditionPreWait (NonRecursiveMutexLockState &state)
void conditionPostWait (NonRecursiveMutexLockState &state)

Private Attributes

NonRecursiveMutex_t m_mutex

Friends

class Condition

Detailed Description

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.


Constructor & Destructor Documentation

BLOCXX_NAMESPACE::NonRecursiveMutex::NonRecursiveMutex (  ) 

Create a new NonRecursiveMutex object.

Exceptions:
Exception if needed system resources exhausted

Definition at line 48 of file NonRecursiveMutex.cpp.

References BLOCXX_NAMESPACE::BLOCXX_DEFINE_EXCEPTION_WITH_ID().

BLOCXX_NAMESPACE::NonRecursiveMutex::~NonRecursiveMutex (  ) 

Destroy this NonRecursiveMutex object.

Definition at line 55 of file NonRecursiveMutex.cpp.

References BLOCXX_THROW.

BLOCXX_NAMESPACE::NonRecursiveMutex::NonRecursiveMutex ( const NonRecursiveMutex  )  [private]

Member Function Documentation

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.

Precondition:
Mutex not currently locked by this thread.
Exceptions:
no exception

Definition at line 64 of file NonRecursiveMutex.cpp.

Referenced by BLOCXX_NAMESPACE::Exception::Exception(), BLOCXX_NAMESPACE::NonRecursiveMutexLock::lock(), and BLOCXX_NAMESPACE::MutexLock::lock().

void BLOCXX_NAMESPACE::NonRecursiveMutex::conditionPostWait ( NonRecursiveMutexLockState &  state  )  [private]
Exceptions:
no exception

Definition at line 92 of file NonRecursiveMutex.cpp.

References BLOCXX_THROW.

void BLOCXX_NAMESPACE::NonRecursiveMutex::conditionPreWait ( NonRecursiveMutexLockState &  state  )  [private]
Exceptions:
no exception

Definition at line 84 of file NonRecursiveMutex.cpp.

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.

Precondition:
Mutex currently locked by this thread.
Exceptions:
no exception

Definition at line 74 of file NonRecursiveMutex.cpp.

Referenced by BLOCXX_NAMESPACE::NonRecursiveMutexLock::release(), and BLOCXX_NAMESPACE::MutexLock::release().


Friends And Related Function Documentation

friend class Condition [friend]

Definition at line 88 of file NonRecursiveMutex.hpp.


Member Data Documentation

NonRecursiveMutex_t BLOCXX_NAMESPACE::NonRecursiveMutex::m_mutex [private]

Definition at line 84 of file NonRecursiveMutex.hpp.


The documentation for this class was generated from the following files:
Generated on Mon Jul 5 19:59:46 2010 for blocxx by  doxygen 1.6.3