8#if !ALIB_SINGLE_THREADED
54 #if !ALIB_DEBUG && !DOXYGEN
55 std::recursive_mutex
mutex;
63 std::recursive_timed_mutex
mutex;
72 #if ALIB_DEBUG_CRITICAL_SECTIONS
93 #if ALIB_DEBUG || DOXYGEN
125 #if ALIB_DEBUG || DOXYGEN
virtual ALIB_DLL bool DCSIsAcquired() const override
virtual ALIB_DLL bool DCSIsSharedAcquired() const override
ALIB_DLL void AcquireRecursive(ALIB_DBG_TAKE_CI)
std::recursive_mutex mutex
ALIB_DLL void ReleaseRecursive(ALIB_DBG_TAKE_CI)
ALIB_DLL bool TryAcquire(ALIB_DBG_TAKE_CI)
DbgLockAsserter Dbg
The debug tool instance.
~RecursiveLock() override
Destructor. With debug-compilations, asserts that this lock is not acquired.
#define ALIB_DEBUG_CRITICAL_SECTIONS
threads::RecursiveLock RecursiveLock
Type alias in namespace alib.
void AssertNotOwned(const CallerInfo &assertCI, const CallerInfo &ci, const char *headline)