| Index: base/task_scheduler/task_scheduler.cc
|
| diff --git a/base/task_scheduler/task_scheduler.cc b/base/task_scheduler/task_scheduler.cc
|
| index 592d6f4a15ecb97f79f890cbd66ee9001c82f596..bff2de65a422e5be152e8d4b1b29f9233fd127da 100644
|
| --- a/base/task_scheduler/task_scheduler.cc
|
| +++ b/base/task_scheduler/task_scheduler.cc
|
| @@ -23,6 +23,20 @@ TaskScheduler* g_task_scheduler = nullptr;
|
|
|
| } // namespace
|
|
|
| +TaskScheduler::InitParams::InitParams(
|
| + const SchedulerWorkerPoolParams& background_worker_pool_params_in,
|
| + const SchedulerWorkerPoolParams& background_blocking_worker_pool_params_in,
|
| + const SchedulerWorkerPoolParams& foreground_worker_pool_params_in,
|
| + const SchedulerWorkerPoolParams& foreground_blocking_worker_pool_params_in)
|
| + : background_worker_pool_params(background_worker_pool_params_in),
|
| + background_blocking_worker_pool_params(
|
| + background_blocking_worker_pool_params_in),
|
| + foreground_worker_pool_params(foreground_worker_pool_params_in),
|
| + foreground_blocking_worker_pool_params(
|
| + foreground_blocking_worker_pool_params_in) {}
|
| +
|
| +TaskScheduler::InitParams::~InitParams() = default;
|
| +
|
| #if !defined(OS_NACL)
|
| // static
|
| void TaskScheduler::CreateAndSetSimpleTaskScheduler(const std::string& name) {
|
| @@ -31,7 +45,7 @@ void TaskScheduler::CreateAndSetSimpleTaskScheduler(const std::string& name) {
|
| worker_pool_params_vector.emplace_back(
|
| name, ThreadPriority::NORMAL,
|
| SchedulerWorkerPoolParams::StandbyThreadPolicy::LAZY,
|
| - std::max(kMinNumThreads, base::SysInfo::NumberOfProcessors()),
|
| + std::max(kMinNumThreads, SysInfo::NumberOfProcessors()),
|
| TimeDelta::FromSeconds(30));
|
| CreateAndSetDefaultTaskScheduler(
|
| worker_pool_params_vector,
|
| @@ -48,6 +62,12 @@ void TaskScheduler::CreateAndSetDefaultTaskScheduler(
|
| worker_pool_params_vector, worker_pool_index_for_traits_callback));
|
| }
|
|
|
| +void TaskScheduler::CreateAndSetDefaultTaskScheduler(
|
| + const std::string& name,
|
| + const InitParams& init_params) {
|
| + SetInstance(internal::TaskSchedulerImpl::Create(name, init_params));
|
| +}
|
| +
|
| // static
|
| void TaskScheduler::SetInstance(std::unique_ptr<TaskScheduler> task_scheduler) {
|
| delete g_task_scheduler;
|
|
|