Evo C++ Library v0.5.1
|
#include <evo/thread.h>
Variation of SpinLock for thread synchronization using sleep-wait.
Public Types | |
typedef SmartSleepLock< AtomicFlag > | Lock |
Sleep-Lock object type – see SmartSleepLock. More... | |
typedef SmartSleepLock< AtomicFlag > | SleepLock |
Sleep-Lock object type – see SmartSleepLock. More... | |
Public Member Functions | |
SleepLock () | |
Constructor. More... | |
void | clear (MemOrder mem_order=std::memory_order_seq_cst) |
Clear flag (set to false). More... | |
void | lock () |
Spin-lock flag. More... | |
void | sleeplock (ulong ms=1) |
Spin-lock flag with a sleep. More... | |
bool | test_and_set (MemOrder mem_order=std::memory_order_seq_cst) |
Atomically set flag (to true) and return the previous value. More... | |
void | unlock () |
Spin-unlock flag. More... | |
typedef SmartSleepLock<AtomicFlag> Lock |
Sleep-Lock object type – see SmartSleepLock.
|
inherited |
Sleep-Lock object type – see SmartSleepLock.
|
inline |
Constructor.