ORIGINAL
|
Abstract base class for mutex implementations. More...
#include <mutex.h>
Public Member Functions | |
mutexBase ()=default | |
Default constructor. | |
mutexBase (const mutexBase &)=delete | |
Deleted copy constructor. | |
mutexBase & | operator= (const mutexBase &)=delete |
Deleted copy assignment operator. | |
virtual void * | nativeHandle () noexcept=0 |
Gets the native handle of the mutex. | |
virtual | ~mutexBase ()=default |
Virtual destructor. | |
Protected Member Functions | |
virtual void | lock ()=0 |
Locks the mutex, blocking if necessary. | |
virtual bool | tryLock ()=0 |
Attempts to lock the mutex without blocking. | |
virtual void | unlock ()=0 |
Unlocks the mutex. | |
virtual ul_integer | id () const =0 |
Gets a unique identifier for the mutex. | |
Abstract base class for mutex implementations.
Provides the interface for mutex operations including:
|
nodiscardprotectedpure virtual |
Gets a unique identifier for the mutex.
Implemented in original::pMutex.
|
protectedpure virtual |
Locks the mutex, blocking if necessary.
sysError | if the lock operation fails |
Implemented in original::pMutex.
|
nodiscardpure virtualnoexcept |
Gets the native handle of the mutex.
Implemented in original::pMutex.
|
protectedpure virtual |
Attempts to lock the mutex without blocking.
sysError | if the operation fails (other than EBUSY) |
Implemented in original::pMutex.
|
protectedpure virtual |
Unlocks the mutex.
sysError | if the unlock operation fails |
Implemented in original::pMutex.