8#include "Arp/System/Commons/Threading/LockGuard.hpp"
11namespace Arp {
namespace System {
namespace Ve
16namespace Arp {
namespace System {
namespace Commons {
namespace Threading
20class ConditionVariable;
34 Mutex(
bool recursive =
true);
48 using IMutexService = Arp::System::Ve::IMutexService;
51 Arp::System::Ve::IMutexService* pMutexService;
Condition variables can be used to synchronize between multiple threads
Definition: ConditionVariable.hpp:27
Simple lock guard, acquiring lock on construction and release it on destruction.
Definition: LockGuard.hpp:17
Mutual exclusion object to prevent data from concurrent modifications.
Definition: Mutex.hpp:27
void Lock(void)
Tries to acquire the lock.
Definition: Mutex.cpp:49
bool TryLock(void)
Like Lock but returns immediately if the lock is already obtained by another thread.
Definition: Mutex.cpp:62
void Unlock(void)
Releases the lock.
Definition: Mutex.cpp:55
virtual ~Mutex(void)
Destructs this instance and frees all resources.
Definition: Mutex.cpp:37
Mutex(bool recursive=true)
Constructs and initializes an Mutex instance.
Definition: Mutex.cpp:17
Root namespace for the PLCnext API