CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::UniqueLock< Mutex > Class Template Referencefinal

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>

Inheritance diagram for CeresEngine::UniqueLock< Mutex >:

Private Types

using super = std::unique_lock< Mutex >
 

Detailed Description

template<typename Mutex>
class CeresEngine::UniqueLock< 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.

Template Parameters
Mutexthe type of the mutex to lock. The type must meet the BasicLockable requirements.

Member Typedef Documentation

◆ super

template<typename Mutex >
using CeresEngine::UniqueLock< Mutex >::super = std::unique_lock<Mutex>
private

The documentation for this class was generated from the following file: