Lunchbox
1.12.0
Multi-threaded C++ toolbox library for all application developers creating high-performance multi-threaded programs.
|
A mutex with timeout capabilities. More...
#include <timedLock.h>
Public Member Functions | |
LUNCHBOX_API | TimedLock () |
Construct a new timed lock. More... | |
LUNCHBOX_API | ~TimedLock () |
Destruct the lock. More... | |
LUNCHBOX_API bool | set (const uint32_t timeout=LB_TIMEOUT_INDEFINITE) |
Set the lock. More... | |
LUNCHBOX_API void | unset () |
Release the lock. More... | |
LUNCHBOX_API bool | trySet () |
Attempt to set the lock. More... | |
LUNCHBOX_API bool | isSet () |
Test if the lock is set. More... | |
A mutex with timeout capabilities.
Example:
Definition at line 35 of file timedLock.h.
LUNCHBOX_API lunchbox::TimedLock::TimedLock | ( | ) |
Construct a new timed lock.
LUNCHBOX_API lunchbox::TimedLock::~TimedLock | ( | ) |
Destruct the lock.
LUNCHBOX_API bool lunchbox::TimedLock::isSet | ( | ) |
Test if the lock is set.
LUNCHBOX_API bool lunchbox::TimedLock::set | ( | const uint32_t | timeout = LB_TIMEOUT_INDEFINITE | ) |
Set the lock.
timeout | the timeout in milliseconds to wait for the lock, or LB_TIMEOUT_INDEFINITE to wait indefinitely. |
LUNCHBOX_API bool lunchbox::TimedLock::trySet | ( | ) |
Attempt to set the lock.
LUNCHBOX_API void lunchbox::TimedLock::unset | ( | ) |
Release the lock.