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) {