| 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 3bcda338b0010c0d86afab60a2416d7d79fba41a..b1b2d36c11696d280c43387a4f209c767f2bb706 100644
|
| --- a/base/task_scheduler/task_scheduler_impl.cc
|
| +++ b/base/task_scheduler/task_scheduler_impl.cc
|
| @@ -6,6 +6,7 @@
|
|
|
| #include <utility>
|
|
|
| +#include "base/memory/ptr_util.h"
|
| #include "base/task_scheduler/delayed_task_manager.h"
|
| #include "base/task_scheduler/scheduler_worker_pool_params.h"
|
| #include "base/task_scheduler/sequence.h"
|
| @@ -52,13 +53,10 @@
|
|
|
| } // namespace
|
|
|
| -TaskSchedulerImpl::TaskSchedulerImpl(
|
| - StringPiece name,
|
| - std::unique_ptr<TaskTrackerType> task_tracker)
|
| +TaskSchedulerImpl::TaskSchedulerImpl(StringPiece name)
|
| : name_(name),
|
| service_thread_("TaskSchedulerServiceThread"),
|
| - task_tracker_(std::move(task_tracker)),
|
| - single_thread_task_runner_manager_(task_tracker_.get(),
|
| + single_thread_task_runner_manager_(&task_tracker_,
|
| &delayed_task_manager_) {
|
| static_assert(arraysize(worker_pools_) == ENVIRONMENT_COUNT,
|
| "The size of |worker_pools_| must match ENVIRONMENT_COUNT.");
|
| @@ -70,7 +68,7 @@
|
| ++environment_type) {
|
| worker_pools_[environment_type] = MakeUnique<SchedulerWorkerPoolImpl>(
|
| name_ + kEnvironmentParams[environment_type].name_suffix,
|
| - kEnvironmentParams[environment_type].priority_hint, task_tracker_.get(),
|
| + kEnvironmentParams[environment_type].priority_hint, &task_tracker_,
|
| &delayed_task_manager_);
|
| }
|
| }
|
| @@ -98,11 +96,11 @@
|
| #if defined(OS_POSIX) && !defined(OS_NACL_SFI)
|
| // Needs to happen after starting the service thread to get its
|
| // message_loop().
|
| - task_tracker_->set_watch_file_descriptor_message_loop(
|
| + task_tracker_.set_watch_file_descriptor_message_loop(
|
| static_cast<MessageLoopForIO*>(service_thread_.message_loop()));
|
|
|
| #if DCHECK_IS_ON()
|
| - task_tracker_->set_service_thread_handle(service_thread_.GetThreadHandle());
|
| + task_tracker_.set_service_thread_handle(service_thread_.GetThreadHandle());
|
| #endif // DCHECK_IS_ON()
|
| #endif // defined(OS_POSIX) && !defined(OS_NACL_SFI)
|
|
|
| @@ -181,11 +179,11 @@
|
|
|
| void TaskSchedulerImpl::Shutdown() {
|
| // TODO(fdoray): Increase the priority of BACKGROUND tasks blocking shutdown.
|
| - task_tracker_->Shutdown();
|
| + task_tracker_.Shutdown();
|
| }
|
|
|
| void TaskSchedulerImpl::FlushForTesting() {
|
| - task_tracker_->Flush();
|
| + task_tracker_.Flush();
|
| }
|
|
|
| void TaskSchedulerImpl::JoinForTesting() {
|
|
|