A MutexTimedLock locks a Mutex object on construction and if successful, unlocks it on destruction of the MutexTimedLock. If the lock can not be acquired within the user provided time limit, the attempt is aborted. Use isSuccessful() to check whether the attempt succeeded. More...
#include <MutexLock.hpp>
Public Member Functions | |
bool | isSuccessful () |
MutexTimedLock (MutexInterface &mutex, Seconds timeout) | |
~MutexTimedLock () | |
Protected Member Functions | |
MutexTimedLock () | |
Protected Attributes | |
MutexInterface * | _mutex |
Private Attributes | |
bool | successful |
A MutexTimedLock locks a Mutex object on construction and if successful, unlocks it on destruction of the MutexTimedLock. If the lock can not be acquired within the user provided time limit, the attempt is aborted. Use isSuccessful() to check whether the attempt succeeded.
Definition at line 146 of file MutexLock.hpp.
RTT::os::MutexTimedLock::MutexTimedLock | ( | MutexInterface & | mutex, |
Seconds | timeout | ||
) | [inline] |
Lock a Mutex object, but don't block longer than a specified timeout.
mutex | The Mutex which should be attempted to be locked |
timeout | The maximum time to wait in seconds. |
Definition at line 158 of file MutexLock.hpp.
RTT::os::MutexTimedLock::~MutexTimedLock | ( | ) | [inline] |
Releases, if any, a lock on the previously try-locked Mutex
Definition at line 176 of file MutexLock.hpp.
RTT::os::MutexTimedLock::MutexTimedLock | ( | ) | [inline, protected] |
Definition at line 188 of file MutexLock.hpp.
bool RTT::os::MutexTimedLock::isSuccessful | ( | ) | [inline] |
Return if the locking of the Mutex was succesfull
Definition at line 168 of file MutexLock.hpp.
MutexInterface* RTT::os::MutexTimedLock::_mutex [protected] |
The Mutex to lock and unlock
Definition at line 186 of file MutexLock.hpp.
bool RTT::os::MutexTimedLock::successful [private] |
Stores the state of success
Definition at line 196 of file MutexLock.hpp.