From: Joel Rosdahl Date: Sat, 5 Aug 2023 13:13:47 +0000 (+0200) Subject: refactor: Move ThreadPool to util X-Git-Tag: v4.9~63 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ec495eb5c61dab9f7b34ac20417ae016a42ee79f;p=thirdparty%2Fccache.git refactor: Move ThreadPool to util --- diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 9e51429cd..8ec9abe25 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -8,7 +8,6 @@ set( Hash.cpp Logging.cpp ProgressBar.cpp - ThreadPool.cpp Util.cpp argprocessing.cpp assertions.cpp diff --git a/src/core/mainoptions.cpp b/src/core/mainoptions.cpp index f12c4f6ec..1460246e0 100644 --- a/src/core/mainoptions.cpp +++ b/src/core/mainoptions.cpp @@ -24,7 +24,6 @@ #include #include #include -#include #include #include #include @@ -43,6 +42,7 @@ #include #include #include +#include #include #include #include @@ -329,7 +329,7 @@ trim_dir(const std::string& dir, if (recompress_level) { const size_t read_ahead = std::max( static_cast(10), 2 * static_cast(recompress_threads)); - ThreadPool thread_pool(recompress_threads, read_ahead); + util::ThreadPool thread_pool(recompress_threads, read_ahead); core::FileRecompressor recompressor; std::atomic incompressible_size = 0; diff --git a/src/storage/local/LocalStorage.cpp b/src/storage/local/LocalStorage.cpp index 8d54f81e1..781fcb515 100644 --- a/src/storage/local/LocalStorage.cpp +++ b/src/storage/local/LocalStorage.cpp @@ -24,7 +24,6 @@ #include #include #include -#include #include #include #include @@ -37,6 +36,7 @@ #include #include #include +#include #include #include #include @@ -842,7 +842,7 @@ LocalStorage::recompress(const std::optional level, { const size_t read_ahead = std::max(static_cast(10), 2 * static_cast(threads)); - ThreadPool thread_pool(threads, read_ahead); + util::ThreadPool thread_pool(threads, read_ahead); core::FileRecompressor recompressor; std::atomic incompressible_size = 0; diff --git a/src/util/CMakeLists.txt b/src/util/CMakeLists.txt index adfc7709f..deb2cad65 100644 --- a/src/util/CMakeLists.txt +++ b/src/util/CMakeLists.txt @@ -6,6 +6,7 @@ set( LongLivedLockFileManager.cpp TemporaryFile.cpp TextTable.cpp + ThreadPool.cpp TimePoint.cpp Tokenizer.cpp UmaskScope.cpp diff --git a/src/ThreadPool.cpp b/src/util/ThreadPool.cpp similarity index 95% rename from src/ThreadPool.cpp rename to src/util/ThreadPool.cpp index d5da4d507..1c62e5d72 100644 --- a/src/ThreadPool.cpp +++ b/src/util/ThreadPool.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2019-2020 Joel Rosdahl and other contributors +// Copyright (C) 2019-2023 Joel Rosdahl and other contributors // // See doc/AUTHORS.adoc for a complete list of contributors. // @@ -18,6 +18,8 @@ #include "ThreadPool.hpp" +namespace util { + ThreadPool::ThreadPool(size_t number_of_threads, size_t task_queue_max_size) : m_task_queue_max_size(task_queue_max_size) { @@ -86,3 +88,5 @@ ThreadPool::worker_thread_main() task(); } } + +} // namespace util diff --git a/src/ThreadPool.hpp b/src/util/ThreadPool.hpp similarity index 93% rename from src/ThreadPool.hpp rename to src/util/ThreadPool.hpp index fa4653825..32b85e877 100644 --- a/src/ThreadPool.hpp +++ b/src/util/ThreadPool.hpp @@ -1,4 +1,4 @@ -// Copyright (C) 2019-2021 Joel Rosdahl and other contributors +// Copyright (C) 2019-2023 Joel Rosdahl and other contributors // // See doc/AUTHORS.adoc for a complete list of contributors. // @@ -25,6 +25,8 @@ #include #include +namespace util { + class ThreadPool { public: @@ -47,3 +49,5 @@ private: void worker_thread_main(); }; + +} // namespace util