diff --git a/libfuse/lib/fuse_loop.cpp b/libfuse/lib/fuse_loop.cpp index a377bf60..0d330828 100644 --- a/libfuse/lib/fuse_loop.cpp +++ b/libfuse/lib/fuse_loop.cpp @@ -199,7 +199,11 @@ _calculate_thread_count(const int raw_thread_count_) thread_count = 4; if(raw_thread_count_ == 0) - thread_count = std::thread::hardware_concurrency(); + { + thread_count = std::thread::hardware_concurrency(); + if(thread_count > 8) + thread_count = 8; + } else if(raw_thread_count_ < 0) thread_count = (std::thread::hardware_concurrency() / -raw_thread_count_); else if(raw_thread_count_ > 0)