| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/scheduler/child/scheduler_helper.h" | 5 #include "components/scheduler/child/scheduler_helper.h" |
| 6 | 6 |
| 7 #include "base/time/default_tick_clock.h" | 7 #include "base/time/default_tick_clock.h" |
| 8 #include "base/trace_event/trace_event.h" | 8 #include "base/trace_event/trace_event.h" |
| 9 #include "base/trace_event/trace_event_argument.h" | 9 #include "base/trace_event/trace_event_argument.h" |
| 10 #include "components/scheduler/child/nestable_single_thread_task_runner.h" | 10 #include "components/scheduler/child/nestable_single_thread_task_runner.h" |
| 11 #include "components/scheduler/child/task_queue.h" |
| 11 | 12 |
| 12 namespace scheduler { | 13 namespace scheduler { |
| 13 | 14 |
| 14 SchedulerHelper::SchedulerHelper( | 15 SchedulerHelper::SchedulerHelper( |
| 15 scoped_refptr<NestableSingleThreadTaskRunner> main_task_runner, | 16 scoped_refptr<NestableSingleThreadTaskRunner> main_task_runner, |
| 16 const char* tracing_category, | 17 const char* tracing_category, |
| 17 const char* disabled_by_default_tracing_category, | 18 const char* disabled_by_default_tracing_category, |
| 18 const char* disabled_by_default_verbose_tracing_category, | 19 const char* disabled_by_default_verbose_tracing_category, |
| 19 size_t total_task_queue_count) | 20 size_t total_task_queue_count) |
| 20 : task_queue_selector_(new PrioritizingTaskQueueSelector()), | 21 : task_queue_selector_(new PrioritizingTaskQueueSelector()), |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 67 } | 68 } |
| 68 | 69 |
| 69 SchedulerHelper::~SchedulerHelper() { | 70 SchedulerHelper::~SchedulerHelper() { |
| 70 } | 71 } |
| 71 | 72 |
| 72 void SchedulerHelper::Shutdown() { | 73 void SchedulerHelper::Shutdown() { |
| 73 CheckOnValidThread(); | 74 CheckOnValidThread(); |
| 74 task_queue_manager_.reset(); | 75 task_queue_manager_.reset(); |
| 75 } | 76 } |
| 76 | 77 |
| 77 scoped_refptr<base::SingleThreadTaskRunner> | 78 scoped_refptr<TaskQueue> SchedulerHelper::DefaultTaskRunner() { |
| 78 SchedulerHelper::DefaultTaskRunner() { | |
| 79 CheckOnValidThread(); | 79 CheckOnValidThread(); |
| 80 return default_task_runner_; | 80 return default_task_runner_; |
| 81 } | 81 } |
| 82 | 82 |
| 83 scoped_refptr<base::SingleThreadTaskRunner> | 83 scoped_refptr<base::SingleThreadTaskRunner> |
| 84 SchedulerHelper::ControlTaskRunner() { | 84 SchedulerHelper::ControlTaskRunner() { |
| 85 return control_task_runner_; | 85 return control_task_runner_; |
| 86 } | 86 } |
| 87 | 87 |
| 88 scoped_refptr<base::SingleThreadTaskRunner> | 88 scoped_refptr<base::SingleThreadTaskRunner> |
| (...skipping 14 matching lines...) Expand all Loading... |
| 103 | 103 |
| 104 TaskQueueManager* SchedulerHelper::GetTaskQueueManagerForTesting() { | 104 TaskQueueManager* SchedulerHelper::GetTaskQueueManagerForTesting() { |
| 105 CheckOnValidThread(); | 105 CheckOnValidThread(); |
| 106 return task_queue_manager_.get(); | 106 return task_queue_manager_.get(); |
| 107 } | 107 } |
| 108 | 108 |
| 109 base::TimeTicks SchedulerHelper::Now() const { | 109 base::TimeTicks SchedulerHelper::Now() const { |
| 110 return time_source_->NowTicks(); | 110 return time_source_->NowTicks(); |
| 111 } | 111 } |
| 112 | 112 |
| 113 scoped_refptr<base::SingleThreadTaskRunner> SchedulerHelper::TaskRunnerForQueue( | 113 scoped_refptr<TaskQueue> SchedulerHelper::TaskRunnerForQueue( |
| 114 size_t queue_index) const { | 114 size_t queue_index) const { |
| 115 CheckOnValidThread(); | 115 CheckOnValidThread(); |
| 116 return task_queue_manager_->TaskRunnerForQueue(queue_index); | 116 return task_queue_manager_->TaskRunnerForQueue(queue_index); |
| 117 } | 117 } |
| 118 | 118 |
| 119 base::TimeTicks SchedulerHelper::NextPendingDelayedTaskRunTime() const { | 119 base::TimeTicks SchedulerHelper::NextPendingDelayedTaskRunTime() const { |
| 120 CheckOnValidThread(); | 120 CheckOnValidThread(); |
| 121 return task_queue_manager_->NextPendingDelayedTaskRunTime(); | 121 return task_queue_manager_->NextPendingDelayedTaskRunTime(); |
| 122 } | 122 } |
| 123 | 123 |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 212 } | 212 } |
| 213 | 213 |
| 214 void SchedulerHelper::RemoveTaskObserver( | 214 void SchedulerHelper::RemoveTaskObserver( |
| 215 base::MessageLoop::TaskObserver* task_observer) { | 215 base::MessageLoop::TaskObserver* task_observer) { |
| 216 CheckOnValidThread(); | 216 CheckOnValidThread(); |
| 217 if (task_queue_manager_) | 217 if (task_queue_manager_) |
| 218 task_queue_manager_->RemoveTaskObserver(task_observer); | 218 task_queue_manager_->RemoveTaskObserver(task_observer); |
| 219 } | 219 } |
| 220 | 220 |
| 221 } // namespace scheduler | 221 } // namespace scheduler |
| OLD | NEW |