optimize thread pool

Signed-off-by: liduo <liduo29@huawei.com>
This commit is contained in:
liduo
2025-01-11 11:36:12 +08:00
parent bd4958491a
commit b682caffc7
11 changed files with 84 additions and 25 deletions
+1 -3
View File
@@ -37,12 +37,10 @@ GenericCompiler::~GenericCompiler()
uint32_t GenericCompiler::CompileFiles(const std::vector<FileInfo> &fileInfos)
{
cout << "Info: GenericCompiler::CompileFiles" << endl;
ThreadPool pool(THREAD_POOL_SIZE);
pool.Start();
std::vector<std::future<uint32_t>> results;
for (const auto &fileInfo : fileInfos) {
auto taskFunc = [this](const FileInfo &fileInfo) { return this->CompileSingleFile(fileInfo); };
results.push_back(pool.Enqueue(taskFunc, fileInfo));
results.push_back(ThreadPool::GetInstance().Enqueue(taskFunc, fileInfo));
}
for (auto &ret : results) {
if (ret.get() != RESTOOL_SUCCESS) {