aboutsummaryrefslogtreecommitdiff
path: root/src/tools/mhd_tool_get_cpu_count.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/mhd_tool_get_cpu_count.h')
-rw-r--r--src/tools/mhd_tool_get_cpu_count.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/src/tools/mhd_tool_get_cpu_count.h b/src/tools/mhd_tool_get_cpu_count.h
new file mode 100644
index 00000000..84091e0f
--- /dev/null
+++ b/src/tools/mhd_tool_get_cpu_count.h
@@ -0,0 +1,55 @@
1/*
2 This file is part of GNU libmicrohttpd
3 Copyright (C) 2023 Evgeny Grin (Karlson2k)
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with this library; if not, write to the Free Software
17 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 */
19
20/**
21 * @file tools/mhd_tool_get_cpu_count.h
22 * @brief Declaration of functions to detect the number of available
23 * CPU cores.
24 * @author Karlson2k (Evgeny Grin)
25 */
26
27
28#ifndef SRC_TOOLS_MHD_TOOL_GET_CPU_COUNT_H_
29#define SRC_TOOLS_MHD_TOOL_GET_CPU_COUNT_H_ 1
30
31
32/**
33 * Detect the number of logical CPU cores available for the process.
34 * The number of cores available for this process could be different from
35 * value of cores available on the system. The OS may have limit on number
36 * assigned/allowed cores for single process and process may have limited
37 * CPU affinity.
38 * @return the number of logical CPU cores available for the process or
39 * -1 if failed to detect
40 */
41int
42mhd_tool_get_proc_cpu_count (void);
43
44
45/**
46 * Try to detect the number of logical CPU cores available for the system.
47 * The number of available logical CPU cores could be changed any time due to
48 * CPU hotplug.
49 * @return the number of logical CPU cores available,
50 * -1 if failed to detect.
51 */
52int
53mhd_tool_get_system_cpu_count (void);
54
55#endif /* SRC_TOOLS_MHD_TOOL_GET_CPU_COUNT_H_ */