PL::LockGuard class
-
class LockGuard
RAII-style lock guard class.
Public Functions
-
LockGuard(Lockable &lockable, TickType_t timeout = portMAX_DELAY)
Locks the object.
- Parameters:
lockable – lockable object
timeout – timeout in FreeRTOS ticks
-
LockGuard(Lockable &lockable1, Lockable &lockable2, TickType_t timeout = portMAX_DELAY)
Locks multiple objects preventing deadlock.
- Parameters:
lockable1 – lockable object 1
lockable2 – lockable object 2
timeout – total timeout in FreeRTOS ticks
-
LockGuard(Lockable &lockable1, Lockable &lockable2, Lockable &lockable3, TickType_t timeout = portMAX_DELAY)
Locks multiple objects preventing deadlock.
- Parameters:
lockable1 – lockable object 1
lockable2 – lockable object 2
lockable3 – lockable object 3
timeout – total timeout in FreeRTOS ticks
-
bool IsLocked() const
Checks if all objects are locked.
- Returns:
true if all objects are locked
-
LockGuard(Lockable &lockable, TickType_t timeout = portMAX_DELAY)