ALib C++ Library
Library Version: 2412 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
dbgcriticalsections.hpp File Reference

Description:

This header file is part of module ALib Threads of the ALib C++ Library.

© 2013-2024 A-Worx GmbH, Germany. Published under Boost Software License.

Definition in file dbgcriticalsections.hpp.

#include "alib/lang/owner.hpp"
#include <thread>
#include <atomic>
Include dependency graph for dbgcriticalsections.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  DbgCriticalSections::AssociatedLock
 
struct  DbgCriticalSections
 

Namespaces

namespace  alib
 
namespace  alib::lang
 
namespace  alib::threads
 

Macros

ALib Module Threads

While macros in this section logically belong to module ALib Threads, they are available (but empty) also when this module is not included in the ALib Distribution. An explanation to this is given with chapter 1.2 Threading-Agnostic Software of this module's Programmer's Manual.

Their definition depends on the setting of ALIB_DEBUG_CRITICAL_SECTIONS, which defaults to 1, in case module ALib Threads is included in the ALib Distribution.

If the symbol is not set, all the symbols in this section are empty.

#define ALIB_DCS   ALIB_OWN(*this)
 
#define ALIB_DCS_ACQUIRE   Acquire(ALIB_CALLER);
 
#define ALIB_DCS_ACQUIRE_SHARED   AcquireShared(ALIB_CALLER);
 
#define ALIB_DCS_ACQUIRE_SHARED_WITH(CS)
 
#define ALIB_DCS_ACQUIRE_WITH(CS)
 
#define ALIB_DCS_RELEASE   Release(ALIB_CALLER);
 
#define ALIB_DCS_RELEASE_SHARED   ReleaseShared(ALIB_CALLER);
 
#define ALIB_DCS_RELEASE_SHARED_WITH(CS)
 
#define ALIB_DCS_RELEASE_WITH(CS)
 
#define ALIB_DCS_SHARED   ALIB_OWN_SHARED(*this)
 
#define ALIB_DCS_SHARED_WITH(CS)
 
#define ALIB_DCS_WITH(CS)
 

Variables

unsigned int DBG_CRITICAL_SECTION_YIELD_OR_SLEEP_TIME_IN_NS