libjmmcg
build_2783
A C++ library containing an eclectic mix of useful, advanced components.
|
#include <locking.hpp>
Public Types | |
typedef lockable< typename LockObject::lock_traits > | base_t |
typedef LockObject | atomic_t |
typedef atomic_t::lock_traits | lock_traits |
typedef lock_traits::atomic_state_type | atomic_state_type |
typedef lock_traits::timeout_type | timeout_type |
typedef atomic_state_type | lock_result_type |
Public Types inherited from jmmcg::ppd::lock::lockable< LockObject::lock_traits > | |
using | lock_traits = LockObject::lock_traits |
typedef lock_traits::atomic_state_type | atomic_state_type |
typedef lock_traits::timeout_type | timeout_type |
Static Public Attributes | |
static constexpr generic_traits::memory_access_modes | memory_access_mode =atomic_t::memory_access_mode |
Protected Member Functions | |
__stdcall | scope_lock (atomic_t &lo) noexcept(true) FORCE_INLINE |
__stdcall | scope_lock (atomic_t &lo, const typename atomic_t::timeout_type period) noexcept(true) FORCE_INLINE |
scope_lock (scope_lock const &)=delete | |
virtual __stdcall | ~scope_lock () noexcept(true) FORCE_INLINE |
lock_result_type __fastcall | try_lock () noexcept(true) override FORCE_INLINE |
lock_result_type __fastcall | lock () noexcept(false) override FORCE_INLINE |
lock_result_type __fastcall | lock (const timeout_type period) noexcept(false) override FORCE_INLINE |
lock_result_type __fastcall | unlock () noexcept(true) override FORCE_INLINE |
void | decay () noexcept(true) FORCE_INLINE |
Protected Attributes | |
atomic_t & | locker |
Additional Inherited Members |
Definition at line 138 of file locking.hpp.
typedef lock_traits::atomic_state_type jmmcg::ppd::lock::scope_lock< LockObject >::atomic_state_type |
Definition at line 143 of file locking.hpp.
typedef LockObject jmmcg::ppd::lock::scope_lock< LockObject >::atomic_t |
Definition at line 141 of file locking.hpp.
typedef lockable<typename LockObject::lock_traits> jmmcg::ppd::lock::scope_lock< LockObject >::base_t |
Definition at line 140 of file locking.hpp.
typedef atomic_state_type jmmcg::ppd::lock::scope_lock< LockObject >::lock_result_type |
Definition at line 145 of file locking.hpp.
typedef atomic_t::lock_traits jmmcg::ppd::lock::scope_lock< LockObject >::lock_traits |
Definition at line 142 of file locking.hpp.
typedef lock_traits::timeout_type jmmcg::ppd::lock::scope_lock< LockObject >::timeout_type |
Definition at line 144 of file locking.hpp.
|
inlineexplicitprotectednoexcept |
Definition at line 102 of file locking_impl.hpp.
|
inlineprotectednoexcept |
Definition at line 131 of file locking_impl.hpp.
|
protecteddelete |
|
inlineprotectedvirtualnoexcept |
Definition at line 138 of file locking_impl.hpp.
|
inlineprotectednoexcept |
Definition at line 143 of file locking_impl.hpp.
|
inlineoverrideprotectedvirtualnoexcept |
Implements jmmcg::ppd::lock::lockable< LockObject::lock_traits >.
Reimplemented in jmmcg::ppd::lock::in_process< LockObject >.
Definition at line 113 of file locking_impl.hpp.
|
inlineoverrideprotectedvirtualnoexcept |
Implements jmmcg::ppd::lock::lockable< LockObject::lock_traits >.
Reimplemented in jmmcg::ppd::lock::in_process< LockObject >.
Definition at line 119 of file locking_impl.hpp.
|
inlineoverrideprotectedvirtualnoexcept |
Reimplemented from jmmcg::ppd::lock::lockable< LockObject::lock_traits >.
Reimplemented in jmmcg::ppd::lock::in_process< LockObject >.
Definition at line 107 of file locking_impl.hpp.
|
inlineoverrideprotectedvirtualnoexcept |
Implements jmmcg::ppd::lock::lockable< LockObject::lock_traits >.
Reimplemented in jmmcg::ppd::lock::in_process< LockObject >.
Definition at line 125 of file locking_impl.hpp.
|
protected |
Definition at line 166 of file locking.hpp.
|
staticconstexpr |
To assist in allowing compile-time computation of the algorithmic order of the threading model.
Definition at line 150 of file locking.hpp.