8#if !ALIB_SINGLE_THREADED
58 #if ALIB_DEBUG_CRITICAL_SECTIONS
74 #if ALIB_DEBUG || DOXYGEN
~TimedLock() override
Destructor. With debug-compilations, asserts that this lock is not acquired.
DbgLockAsserter Dbg
The debug tool instance.
ALIB_DLL bool TryAcquireTimed(const Ticks::Duration &waitDuration, const CallerInfo &ci)
bool TryAcquireTimed(const Ticks::Duration::TDuration &waitDuration, const CallerInfo &ci)
ALIB_DLL void Release(ALIB_DBG_TAKE_CI)
bool TryAcquireTimed(const Ticks &pointInTime, const CallerInfo &ci)
virtual ALIB_DLL bool DCSIsSharedAcquired() const override
bool TryAcquireTimed(const Ticks::TTimePoint &pointInTime, const CallerInfo &ci)
virtual ALIB_DLL bool DCSIsAcquired() const override
std::timed_mutex mutex
The internal object to lock on.
ALIB_DLL bool TryAcquire(ALIB_DBG_TAKE_CI)
ALIB_DLL void Acquire(ALIB_DBG_TAKE_CI)
typename std::chrono::steady_clock::time_point TTimePoint
#define ALIB_DEBUG_CRITICAL_SECTIONS
threads::TimedLock TimedLock
Type alias in namespace alib.
lang::CallerInfo CallerInfo
Type alias in namespace alib.
time::Ticks Ticks
Type alias in namespace alib.
void AssertNotOwned(const CallerInfo &assertCI, const CallerInfo &ci, const char *headline)