| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "base/task/task_scheduler/initialization_util.h" |
| |
| #include <algorithm> |
| |
| #include "base/sys_info.h" |
| |
| namespace base { |
| |
| int RecommendedMaxNumberOfThreadsInPool(int min, |
| int max, |
| double cores_multiplier, |
| int offset) { |
| const int num_of_cores = SysInfo::NumberOfProcessors(); |
| const int threads = std::ceil<int>(num_of_cores * cores_multiplier) + offset; |
| return std::min(max, std::max(min, threads)); |
| } |
| |
| } // namespace base |