Chromium Code Reviews| Index: base/task_scheduler/task_scheduler_impl.cc |
| diff --git a/base/task_scheduler/task_scheduler_impl.cc b/base/task_scheduler/task_scheduler_impl.cc |
| index 2f5b68f6a78f6328580d95302a8905805801659b..01145496f78c5b4a2d4f33087426e09bb4c18bcf 100644 |
| --- a/base/task_scheduler/task_scheduler_impl.cc |
| +++ b/base/task_scheduler/task_scheduler_impl.cc |
| @@ -10,6 +10,7 @@ |
| #include "base/bind_helpers.h" |
| #include "base/memory/ptr_util.h" |
| #include "base/task_scheduler/scheduler_service_thread.h" |
| +#include "base/task_scheduler/scheduler_worker_pool_params.h" |
| #include "base/task_scheduler/sequence_sort_key.h" |
| #include "base/task_scheduler/task.h" |
| #include "base/time/time.h" |
| @@ -19,12 +20,12 @@ namespace internal { |
| // static |
| std::unique_ptr<TaskSchedulerImpl> TaskSchedulerImpl::Create( |
| - const std::vector<WorkerPoolCreationArgs>& worker_pools, |
| + const std::vector<SchedulerWorkerPoolParams>& worker_pool_params, |
|
gab
2016/07/20 01:08:27
|params_list|
(same in header)
robliao
2016/07/20 17:24:27
Going with worker_pool_param_vector. I want to kee
|
| const WorkerPoolIndexForTraitsCallback& |
| worker_pool_index_for_traits_callback) { |
| std::unique_ptr<TaskSchedulerImpl> scheduler( |
| new TaskSchedulerImpl(worker_pool_index_for_traits_callback)); |
| - scheduler->Initialize(worker_pools); |
| + scheduler->Initialize(worker_pool_params); |
| return scheduler; |
| } |
| @@ -84,21 +85,20 @@ TaskSchedulerImpl::TaskSchedulerImpl(const WorkerPoolIndexForTraitsCallback& |
| } |
| void TaskSchedulerImpl::Initialize( |
| - const std::vector<WorkerPoolCreationArgs>& worker_pools) { |
| - DCHECK(!worker_pools.empty()); |
| + const std::vector<SchedulerWorkerPoolParams>& worker_pool_params) { |
|
gab
2016/07/20 01:08:27
|params_list|
robliao
2016/07/20 17:24:27
Done.
|
| + DCHECK(!worker_pool_params.empty()); |
| const SchedulerWorkerPoolImpl::ReEnqueueSequenceCallback |
| re_enqueue_sequence_callback = |
| Bind(&TaskSchedulerImpl::ReEnqueueSequenceCallback, Unretained(this)); |
| - for (const auto& worker_pool : worker_pools) { |
| + for (const auto& worker_pool_param : worker_pool_params) { |
|
gab
2016/07/20 01:08:27
|params : params_list|
(i.e. items are still plur
robliao
2016/07/20 17:24:27
Done.
|
| // Passing pointers to objects owned by |this| to |
| // SchedulerWorkerPoolImpl::Create() is safe because a TaskSchedulerImpl |
| // can't be deleted before all its worker pools have been joined. |
| worker_pools_.push_back(SchedulerWorkerPoolImpl::Create( |
| - worker_pool.name, worker_pool.thread_priority, worker_pool.max_threads, |
| - worker_pool.io_restriction, re_enqueue_sequence_callback, |
| - &task_tracker_, &delayed_task_manager_)); |
| + worker_pool_param, re_enqueue_sequence_callback, &task_tracker_, |
| + &delayed_task_manager_)); |
| CHECK(worker_pools_.back()); |
| } |