ALib C++ Library
by
Library Version:
2511 R0
Documentation generated by
Loading...
Searching...
No Matches
A-Worx
ALib
src
alib
threadmodel
threadmodel.mpp
Go to the documentation of this file.
1
//==================================================================================================
2
/// \file
3
/// This header-file is part of the \aliblong.
4
/// With supporting legacy or module builds, .mpp-files are either recognized by the build-system
5
/// as C++20 Module interface files, or are included by the
6
/// \ref alib_manual_modules_impludes "import/include headers".
7
///
8
/// \emoji :copyright: 2013-2025 A-Worx GmbH, Germany.
9
/// Published under \ref mainpage_license "Boost Software License".
10
//==================================================================================================
11
#if !defined(ALIB_C20_MODULES) || ((ALIB_C20_MODULES != 0) && (ALIB_C20_MODULES != 1))
12
# error "Symbol ALIB_C20_MODULES has to be given to the compiler as either 0 or 1"
13
#endif
14
#if ALIB_C20_MODULES
15
module
;
16
#endif
17
//========================================= Global Fragment ========================================
18
#include <list>
19
#include <map>
20
#include <queue>
21
#include "
alib/enumops/enumops.prepro.hpp
"
22
#include "
alib/enumrecords/enumrecords.prepro.hpp
"
23
//============================================== Module ============================================
24
#if ALIB_C20_MODULES
25
/// This is a <em><b>C++ Module</b></em> of the \aliblong.
26
/// Due to the dual-compile option (either as C++20 Modules or using legacy C++ inclusion),
27
/// the C++20 Module names are not of further interest or use.<br>
28
/// In general, the names equal the names of the header files listed in the chapter
29
/// \ref alib_manual_modules_impludes of the \alib User Manual.
30
///
31
/// @see The documentation of the <em><b>"ALib Module"</b></em> given with the corresponding
32
/// Programmer's Manual \alib_threadmodel.
33
export
module
ALib.ThreadModel;
34
import
ALib.Lang;
35
import
ALib.Time;
36
import
ALib.Threads;
37
import
ALib.Singletons;
38
# if ALIB_STRINGS
39
import
ALib.Strings;
40
# endif
41
# if ALIB_MONOMEM
42
import
ALib.Monomem;
43
# endif
44
import
ALib.Containers.List;
45
# if ALIB_CONTAINERS
46
import
ALib.Containers.HashTable;
47
# endif
48
# if ALIB_ENUMRECORDS
49
import
ALib.EnumRecords;
50
# endif
51
#else
52
# include "
ALib.Lang.H
"
53
# include "
ALib.Time.H
"
54
# include "
ALib.Threads.H
"
55
# include "
ALib.Singletons.H
"
56
# include "
ALib.Strings.H
"
57
# include "
ALib.Monomem.H
"
58
# include "
ALib.Containers.List.H
"
59
# include "
ALib.Containers.HashTable.H
"
60
# include "
ALib.EnumRecords.H
"
61
#endif
62
63
//============================================= Exports ============================================
64
#include "
alib/threadmodel/trigger.inl
"
65
#include "
alib/threadmodel/jobs.inl
"
66
#include "
alib/threadmodel/dedicatedworker.inl
"
67
#include "
alib/threadmodel/threadpool.inl
"
ALib.Containers.HashTable.H
ALib.Containers.List.H
ALib.EnumRecords.H
ALib.Lang.H
ALib.Monomem.H
ALib.Singletons.H
ALib.Strings.H
ALib.Threads.H
ALib.Time.H
dedicatedworker.inl
enumops.prepro.hpp
enumrecords.prepro.hpp
jobs.inl
threadpool.inl
trigger.inl