10namespace Arp {
namespace System {
namespace Ve
15namespace Arp {
namespace System {
namespace Commons {
namespace Threading
19class ConditionVariable;
27 friend class ConditionVariable;
57 using IMutexService = Arp::System::Ve::IMutexService;
60 Arp::System::Ve::IMutexService* pMutexService;
Mutual exclusion object to prevent data from concurrent modifications.
Definition: Mutex.hpp:26
Mutex(Mutex &&arg)
Move contructor
void Lock(void)
Tries to acquire the lock.
bool TryLock(void)
Like Lock but returns immediately if the lock is already obtained by another thread.
void Unlock(void)
Releases the lock.
virtual ~Mutex(void)
Destructs this instance and frees all resources.
Mutex(bool recursive=true)
Constructs and initializes an Mutex instance.
@ System
System components used by the System, Device, Plc or Io domains.
Root namespace for the PLCnext API