Orocos Real-Time Toolkit
2.8.3
|
An object oriented wrapper around a non recursive mutex. More...
#include <rtt/os/Mutex.hpp>
Public Member Functions | |
Mutex () | |
Initialize a Mutex. More... | |
virtual | ~Mutex () |
Destroy a Mutex. More... | |
virtual void | lock () |
virtual void | unlock () |
virtual bool | trylock () |
Try to lock this mutex. More... | |
virtual bool | timedlock (Seconds s) |
Lock this mutex, but don't wait longer for the lock than the specified timeout. More... | |
Protected Attributes | |
rt_mutex_t | m |
Friends | |
class | Condition |
An object oriented wrapper around a non recursive mutex.
A mutex can only be unlock()'ed, by the thread which lock()'ed it. A trylock is a non blocking lock action which fails or succeeds.
|
inline |
|
inlinevirtual |
Destroy a Mutex.
If the Mutex is still locked, the RTOS will not be asked to clean up its resources.
Definition at line 102 of file Mutex.hpp.
References rtos_mutex_destroy().
|
inlinevirtual |
Implements RTT::os::MutexInterface.
Definition at line 110 of file Mutex.hpp.
References rtos_mutex_lock().
Referenced by timedlock().
|
inlinevirtual |
Lock this mutex, but don't wait longer for the lock than the specified timeout.
s | The maximum time to wait before aqcuiring the lock. |
Implements RTT::os::MutexInterface.
Definition at line 139 of file Mutex.hpp.
References lock(), rtos_mutex_trylock_for(), and RTT::Seconds_to_nsecs().
|
inlinevirtual |
Try to lock this mutex.
Implements RTT::os::MutexInterface.
Definition at line 125 of file Mutex.hpp.
References rtos_mutex_trylock().
|
inlinevirtual |
Implements RTT::os::MutexInterface.
Definition at line 115 of file Mutex.hpp.
References rtos_mutex_unlock().
|
protected |
Definition at line 87 of file Mutex.hpp.
Referenced by RTT::os::Condition::wait(), and RTT::os::Condition::wait_until().