|
BDE 4.39.x Production Release
|
#include <bslmt_mutex.h>
This class implements a lightweight, portable wrapper of an OS-level mutex lock to support intra-process synchronization.
lock method of this class is invoked more than once on the same mutex object in the same thread without an intervening call to unLock.See bslmt_mutex
Public Types | |
| typedef MutexImpl< Platform::ThreadPolicy >::NativeType | NativeType |
Public Member Functions | |
| Mutex () | |
| ~Mutex () | |
| void | lock () |
| NativeType & | nativeMutex () |
| int | tryLock () |
| void | unlock () |
| typedef MutexImpl<Platform::ThreadPolicy>::NativeType bslmt::Mutex::NativeType |
NativeType is an alias for the underlying OS-level mutex type. It is exposed so that other bslmt components can operate directly on this mutex.
|
inline |
Create a mutex object in the unlocked state. This method does not return normally unless there are sufficient system resources to construct the object.
|
inline |
Destroy this mutex object.
|
inline |
Acquire a lock on this mutex object. If this object is currently locked by a different thread, then suspend execution of the current thread until a lock can be acquired.
|
inline |
Return a reference to the modifiable OS-level mutex underlying this object. This method is intended only to support other bslmt components that must operate directly on this mutex.
|
inline |
Attempt to acquire a lock on this mutex object. Return 0 on success, and a non-zero value if this object is already locked by a different thread.
|
inline |
Release a lock on this mutex that was previously acquired through a call to lock, or a successful call to tryLock, enabling another thread to acquire a lock on this mutex.