11#include <promeki/config.h>
12#if PROMEKI_ENABLE_CORE
16PROMEKI_NAMESPACE_BEGIN
55 Locker(Mutex &mutex) : _mutex(mutex) { _mutex.lock(); }
58 ~Locker() { _mutex.unlock(); }
60 Locker(
const Locker &) =
delete;
61 Locker &operator=(
const Locker &) =
delete;
62 Locker(Locker &&) =
delete;
63 Locker &operator=(Locker &&) =
delete;
75 Mutex(
const Mutex &) =
delete;
76 Mutex &operator=(
const Mutex &) =
delete;
77 Mutex(Mutex &&) =
delete;
78 Mutex &operator=(Mutex &&) =
delete;
81 void lock() { _mutex.lock(); }
84 void unlock() { _mutex.unlock(); }
90 bool tryLock() {
return _mutex.try_lock(); }
93 friend class WaitCondition;