|
CeresEngine 0.2.0
A game development framework
|
The class UniqueLock is a general-purpose mutex ownership wrapper allowing deferred locking, time-constrained attempts at locking, recursive locking, transfer of lock ownership, and use with condition variables.
More...
#include <CeresEngine/Foundation/Threading/Threading.hpp>
Private Types | |
| using | super = std::unique_lock< Mutex > |
The class UniqueLock is a general-purpose mutex ownership wrapper allowing deferred locking, time-constrained attempts at locking, recursive locking, transfer of lock ownership, and use with condition variables.
The class UniqueLock is movable, but not copyable – it meets the requirements of MoveConstructible and MoveAssignable but not of CopyConstructible or CopyAssignable.
The class UniqueLock meets the BasicLockable requirements. If Mutex meets the Lockable requirements, UniqueLock also meets the UniqueLock requirements (ex.: can be used in std::lock); if Mutex meets the TimedLockable requirements, UniqueLock also meets the TimedLockable requirements.
| Mutex | the type of the mutex to lock. The type must meet the BasicLockable requirements. |
|
private |