|
CDC Badge OS
Firmware for the CDC Badge v1.0 hardware security key
|
Scoped guard for a FreeRTOS recursive mutex. More...
#include <Raii.h>
Public Member Functions | |
| RecursiveMutexGuard (SemaphoreHandle_t sem) noexcept | |
Take sem blocking until acquired; no-op when sem is nullptr. | |
| ~RecursiveMutexGuard () noexcept | |
| RecursiveMutexGuard (const RecursiveMutexGuard &)=delete | |
| RecursiveMutexGuard & | operator= (const RecursiveMutexGuard &)=delete |
Scoped guard for a FreeRTOS recursive mutex.
Takes the recursive semaphore on construction and gives it back on destruction. Tolerates a nullptr handle (no-op), so it can guard an optional/opt-in lock. The same task may nest acquisitions, which a plain MutexGuard would self-deadlock on.
Not safe to call from ISR context.
|
inlineexplicitnoexcept |
Take sem blocking until acquired; no-op when sem is nullptr.
Definition at line 248 of file Raii.h.
Referenced by operator=(), and RecursiveMutexGuard().
|
inlinenoexcept |
|
delete |
References RecursiveMutexGuard().
|
delete |
References RecursiveMutexGuard().