|
EtcPal
HEAD (unstable)
ETC Platform Abstraction Layer (EtcPal)
|
View other versions:
|
Partially based on / inspired by Boost's synchronized_value type: https://github.com/boostorg/thread/blob/ac15f907be14ce070a99d0c719aa8bcdb14de6b0/include/boost/thread/synchronized_value.hpp (C) Copyright 2010 Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk (C) Copyright 2012 Vicente J.
Botet Escriba Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
C++ utility for bundling a value with the lock that guards it. Like a Rust Mutex<T>.
Go to the source code of this file.
Data Structures | |
| struct | FirstType<... > |
| Meta struct to extract the first type from a parameter pack. More... | |
| struct | FirstType< First, Rest... > |
| struct | AdoptLockTag |
| Tag requesting that a lock already held by the calling thread be adopted rather than acquired. More... | |
| struct | DeferLockTag |
| Tag requesting that the lock be left unacquired on construction, to be acquired later with ConstUniqueLockPtr::Lock() or ConstUniqueLockPtr::TryLock(). More... | |
| struct | TryToLockTag |
| Tag requesting that the lock be acquired with a poll or optional timed wait, never failing with an exception; check OwnsLock() for the result. More... | |
| struct | SupportsTimedLock< LockType > |
Trait reporting whether SynchronizedValue::TryToSynchronize() honors its timeout for LockType on the target platform. More... | |
| struct | SupportsTimedLock< Mutex > |
| struct | SupportsTimedLock< RecursiveMutex > |
| class | ConstStrictLockPtr< T, LockType > |
| An RAII handle holding a SynchronizedValue's lock and granting read-only access to the value. More... | |
| class | StrictLockPtr< T, LockType > |
| An RAII handle holding a SynchronizedValue's lock and granting mutable access to the value. More... | |
| class | ConstUniqueLockPtr< T, LockType > |
| An RAII handle for read-only access whose lock may or may not be held. More... | |
| class | UniqueLockPtr< T, LockType > |
| An RAII handle for mutable access whose lock may or may not be held. More... | |
| class | SynchronizedValue< T, LockType > |
| A value bundled with a lock that guards all access to it. More... | |