|
CHERIoT RTOS
A compartmentalised RTOS for CHERIoT hardware
|
Priority-inheriting recursive mutex. More...
#include <locks.hh>
Public Member Functions | |
| bool | try_lock (TimeoutArgument timeout) |
| Attempt to acquire the lock, blocking until a timeout specified by the timeout parameter has expired. | |
| bool | try_lock () |
| Try to acquire the lock, do not block. | |
| void | lock () |
| Acquire the lock, potentially blocking forever. | |
| void | unlock () |
| Release the lock. | |
| void | upgrade_for_destruction () |
| Set the lock in destruction mode. | |
Priority-inheriting recursive mutex.
This can be acquired multiple times from the same thread.
|
inline |
Acquire the lock, potentially blocking forever.
Definition at line 182 of file locks.hh.
References try_lock(), and UnlimitedTimeout.
|
inline |
Try to acquire the lock, do not block.
Definition at line 173 of file locks.hh.
References try_lock().
Referenced by lock(), and try_lock().
|
inline |
Attempt to acquire the lock, blocking until a timeout specified by the timeout parameter has expired.
Definition at line 165 of file locks.hh.
References recursivemutex_trylock().
|
inline |
Release the lock.
Note: This does not check that the lock is owned by the calling thread.
Definition at line 193 of file locks.hh.
References recursivemutex_unlock().
|
inline |
Set the lock in destruction mode.
See the documentation of flaglock_upgrade_for_destruction for more information.
Definition at line 202 of file locks.hh.
References flaglock_upgrade_for_destruction().