|
join 1.0
lightweight network framework library
|
Futex-based mutex suitable for inter-process locking via shared memory. More...
#include <futex.hpp>
Public Member Functions | |
| BasicSharedFutex () noexcept | |
| default constructor. | |
| BasicSharedFutex (const BasicSharedFutex &other)=delete | |
| copy constructor. | |
| BasicSharedFutex & | operator= (const BasicSharedFutex &other)=delete |
| copy assignment. | |
| BasicSharedFutex (BasicSharedFutex &&other)=delete | |
| move constructor. | |
| BasicSharedFutex & | operator= (BasicSharedFutex &&other)=delete |
| move assignment. | |
| ~BasicSharedFutex ()=default | |
| destructor. | |
| void | lock () noexcept |
| lock the futex, blocking until it becomes available. | |
| bool | tryLock () noexcept |
| try to lock the futex without blocking. | |
| void | unlock () noexcept |
| unlock the futex. | |
| std::atomic_uint32_t * | handle () noexcept |
| get a pointer to the underlying futex word. | |
Futex-based mutex suitable for inter-process locking via shared memory.
|
inlinenoexcept |
default constructor.
|
delete |
copy constructor.
| other | other object to copy. |
|
delete |
move constructor.
| other | other object to move. |
|
default |
destructor.
|
inlinenoexcept |
get a pointer to the underlying futex word.
|
inlinenoexcept |
lock the futex, blocking until it becomes available.
|
delete |
move assignment.
| other | other object to move. |
|
delete |
copy assignment.
| other | other object to copy. |
|
inlinenoexcept |
try to lock the futex without blocking.
|
inlinenoexcept |
unlock the futex.