summaryrefslogtreecommitdiff
path: root/httpd.c
diff options
context:
space:
mode:
authordefault <nobody@localhost>2023-02-09 08:09:55 +0100
committerdefault <nobody@localhost>2023-02-09 08:09:55 +0100
commit090a28ba4e15c8d1996a872bed8df902bd6fb4c3 (patch)
treeb46c39865006e5147e0eb3c98559340920576dc4 /httpd.c
parent308a0e0f64094b58d0b1ba8e99c09bf710ed1ca0 (diff)
The number of threads can be forced from the config file.
Diffstat (limited to 'httpd.c')
-rw-r--r--httpd.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/httpd.c b/httpd.c
index 5cc6694..258f788 100644
--- a/httpd.c
+++ b/httpd.c
@@ -420,9 +420,13 @@ void httpd(void)
sem_init(&job_sem, 0, 0);
job_fifo = xs_list_new();
+ n_threads = xs_number_get(xs_dict_get(srv_config, "num_threads"));
+
#ifdef _SC_NPROCESSORS_ONLN
- /* get number of CPUs on the machine */
- n_threads = sysconf(_SC_NPROCESSORS_ONLN);
+ if (n_threads == 0) {
+ /* get number of CPUs on the machine */
+ n_threads = sysconf(_SC_NPROCESSORS_ONLN);
+ }
#endif
if (n_threads < 4)