From 138ed373b04773bee8baa78f0e68feff5ff6aaed Mon Sep 17 00:00:00 2001 From: Marcus Holland-Moritz Date: Tue, 19 Dec 2023 19:58:42 +0100 Subject: [PATCH] refactor(worker_group): use hardware concurrency when num_workers == 0 --- src/dwarfs/worker_group.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dwarfs/worker_group.cpp b/src/dwarfs/worker_group.cpp index bcf0c5d7..589af68a 100644 --- a/src/dwarfs/worker_group.cpp +++ b/src/dwarfs/worker_group.cpp @@ -35,6 +35,7 @@ #include #include #include +#include #include #include "dwarfs/error.h" @@ -102,7 +103,7 @@ class basic_worker_group final : public worker_group::impl, private Policy { , pending_(0) , max_queue_len_(max_queue_len) { if (num_workers < 1) { - DWARFS_THROW(runtime_error, "invalid number of worker threads"); + num_workers = std::max(folly::hardware_concurrency(), 1u); } if (!group_name) {