aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver/cache/cachedisklayer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/zenserver/cache/cachedisklayer.cpp')
-rw-r--r--src/zenserver/cache/cachedisklayer.cpp15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/zenserver/cache/cachedisklayer.cpp b/src/zenserver/cache/cachedisklayer.cpp
index c8bc3871a..9117b8820 100644
--- a/src/zenserver/cache/cachedisklayer.cpp
+++ b/src/zenserver/cache/cachedisklayer.cpp
@@ -14,6 +14,7 @@
#include <zencore/trace.h>
#include <zencore/workthreadpool.h>
#include <zencore/xxhash.h>
+#include <zenutil/workerpools.h>
#include <future>
@@ -3709,11 +3710,8 @@ ZenCacheDiskLayer::DiscoverBuckets()
RwLock SyncLock;
- const size_t MaxHwTreadUse = std::thread::hardware_concurrency();
- const int WorkerThreadPoolCount = gsl::narrow<int>(Min(MaxHwTreadUse, FoundBucketDirectories.size()));
-
- WorkerThreadPool Pool(WorkerThreadPoolCount, "CacheBucket::OpenOrCreate");
- Latch WorkLatch(1);
+ WorkerThreadPool& Pool = GetLargeWorkerPool();
+ Latch WorkLatch(1);
for (auto& BucketPath : FoundBucketDirectories)
{
WorkLatch.AddCount(1);
@@ -3825,11 +3823,8 @@ ZenCacheDiskLayer::Flush()
}
}
{
- const size_t MaxHwTreadUse = Max((std::thread::hardware_concurrency() / 4u), 1u);
- const int WorkerThreadPoolCount = gsl::narrow<int>(Min(MaxHwTreadUse, Buckets.size()));
-
- WorkerThreadPool Pool(WorkerThreadPoolCount, "CacheBucket::Flush");
- Latch WorkLatch(1);
+ WorkerThreadPool& Pool = GetSmallWorkerPool();
+ Latch WorkLatch(1);
for (auto& Bucket : Buckets)
{
WorkLatch.AddCount(1);