UCommon
|
Portable recursive exclusive lock. More...
#include <thread.h>
Public Types | |
typedef autoexclusive< RecursiveMutex > | autolock |
Public Member Functions | |
void | lock (void) |
Acquire or increase locking. | |
bool | lock (timeout_t timeout) |
Timed lock request. | |
RecursiveMutex () | |
Create rexlock. | |
void | release (void) |
Release or decrease locking. | |
Protected Member Functions | |
virtual void | _lock (void) |
virtual void | _unlock (void) |
Protected Attributes | |
pthread_t | locker |
unsigned | lockers |
unsigned | waiting |
Portable recursive exclusive lock.
This class is built from the conditional and hence does not require support for non-standard and platform specific extensions to pthread mutex to support recrusive style mutex locking. The exclusive protocol is implimented to support exclusive_lock referencing.