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 70c80054f621a398707331e8d12d8a07fd8c751f..871e1be11d7e883a6956405f3aa52bedbd5ea06e 100644 |
| --- a/base/task_scheduler/task_scheduler_impl.cc |
| +++ b/base/task_scheduler/task_scheduler_impl.cc |
| @@ -15,11 +15,6 @@ |
| #include "base/task_scheduler/sequence_sort_key.h" |
| #include "base/task_scheduler/task.h" |
| #include "base/task_scheduler/task_tracker.h" |
| -#include "build/build_config.h" |
| - |
| -#if defined(OS_POSIX) && !defined(OS_NACL_SFI) |
| -#include "base/task_scheduler/task_tracker_posix.h" |
| -#endif |
| namespace base { |
| namespace internal { |
| @@ -134,13 +129,11 @@ int TaskSchedulerImpl::GetMaxConcurrentTasksWithTraitsDeprecated( |
| void TaskSchedulerImpl::Shutdown() { |
| // TODO(fdoray): Increase the priority of BACKGROUND tasks blocking shutdown. |
| - DCHECK(task_tracker_); |
| - task_tracker_->Shutdown(); |
| + task_tracker_.Shutdown(); |
| } |
| void TaskSchedulerImpl::FlushForTesting() { |
| - DCHECK(task_tracker_); |
| - task_tracker_->Flush(); |
| + task_tracker_.Flush(); |
| } |
| void TaskSchedulerImpl::JoinForTesting() { |
| @@ -176,23 +169,19 @@ void TaskSchedulerImpl::Initialize( |
| service_thread_options.timer_slack = TIMER_SLACK_MAXIMUM; |
| CHECK(service_thread_.StartWithOptions(service_thread_options)); |
| - // Instantiate TaskTracker. Needs to happen after starting the service thread |
| - // to get its message_loop(). |
| - task_tracker_ = |
| #if defined(OS_POSIX) && !defined(OS_NACL_SFI) |
| - base::MakeUnique<TaskTrackerPosix>( |
| - static_cast<MessageLoopForIO*>(service_thread_.message_loop())); |
| -#else |
| - base::MakeUnique<TaskTracker>(); |
| + // Needs to happen after starting the service thread to get its |
| + // message_loop(). |
| + task_tracker_.Start( |
| + static_cast<MessageLoopForIO*>(service_thread_.message_loop())); |
| #endif |
|
gab
2017/04/12 19:17:34
Hmmm, not starting non-POSIX TaskTracker too??
fdoray
2017/04/13 12:29:08
Renamed Start() -> set_watch_file_descriptor_messa
|
| - // Start DelayedTaskManager. Needs to happen after starting the service thread |
| - // to get its task_runner(). |
| + // Needs to happen after starting the service thread to get its task_runner(). |
| delayed_task_manager_.Start(service_thread_.task_runner()); |
| single_thread_task_runner_manager_ = |
| MakeUnique<SchedulerSingleThreadTaskRunnerManager>( |
| - task_tracker_.get(), &delayed_task_manager_); |
| + &task_tracker_, &delayed_task_manager_); |
| single_thread_task_runner_manager_->Start(); |
| // Callback invoked by workers to re-enqueue a sequence in the appropriate |
| @@ -226,8 +215,7 @@ void TaskSchedulerImpl::Initialize( |
| worker_pools_[environment_type] = MakeUnique<SchedulerWorkerPoolImpl>( |
| name_ + kEnvironmentParams[environment_type].name_suffix, |
| kEnvironmentParams[environment_type].priority_hint, |
| - re_enqueue_sequence_callback, task_tracker_.get(), |
| - &delayed_task_manager_); |
| + re_enqueue_sequence_callback, &task_tracker_, &delayed_task_manager_); |
| worker_pools_[environment_type]->Start( |
| *worker_pool_params[environment_type]); |
| } |