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/scheduler_task_runner_delegate.h" |
11 | 11 |
12 namespace scheduler { | 12 namespace scheduler { |
13 | 13 |
14 SchedulerHelper::SchedulerHelper( | 14 SchedulerHelper::SchedulerHelper( |
15 scoped_refptr<NestableSingleThreadTaskRunner> main_task_runner, | 15 scoped_refptr<SchedulerTaskRunnerDelegate> main_task_runner, |
16 const char* tracing_category, | 16 const char* tracing_category, |
17 const char* disabled_by_default_tracing_category, | 17 const char* disabled_by_default_tracing_category, |
18 const char* disabled_by_default_verbose_tracing_category, | 18 const char* disabled_by_default_verbose_tracing_category, |
19 size_t total_task_queue_count) | 19 size_t total_task_queue_count) |
20 : task_queue_selector_(new PrioritizingTaskQueueSelector()), | 20 : task_queue_selector_(new PrioritizingTaskQueueSelector()), |
21 task_queue_manager_( | 21 task_queue_manager_( |
22 new TaskQueueManager(total_task_queue_count, | 22 new TaskQueueManager(total_task_queue_count, |
23 main_task_runner, | 23 main_task_runner, |
24 task_queue_selector_.get(), | 24 task_queue_selector_.get(), |
25 disabled_by_default_tracing_category, | 25 disabled_by_default_tracing_category, |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
57 QueueId::CONTROL_TASK_AFTER_WAKEUP_QUEUE, | 57 QueueId::CONTROL_TASK_AFTER_WAKEUP_QUEUE, |
58 TaskQueueManager::WakeupPolicy::DONT_WAKE_OTHER_QUEUES); | 58 TaskQueueManager::WakeupPolicy::DONT_WAKE_OTHER_QUEUES); |
59 | 59 |
60 for (size_t i = 0; i < TASK_QUEUE_COUNT; i++) { | 60 for (size_t i = 0; i < TASK_QUEUE_COUNT; i++) { |
61 task_queue_manager_->SetQueueName( | 61 task_queue_manager_->SetQueueName( |
62 i, TaskQueueIdToString(static_cast<QueueId>(i))); | 62 i, TaskQueueIdToString(static_cast<QueueId>(i))); |
63 } | 63 } |
64 | 64 |
65 // TODO(skyostil): Increase this to 4 (crbug.com/444764). | 65 // TODO(skyostil): Increase this to 4 (crbug.com/444764). |
66 task_queue_manager_->SetWorkBatchSize(1); | 66 task_queue_manager_->SetWorkBatchSize(1); |
67 | |
68 main_task_runner->SetDefaultTaskRunner( | |
alex clarke (OOO till 29th)
2015/07/10 15:21:11
There was a test for this when it was on the TQM.
Sami
2015/07/10 15:35:13
Yep, it's now in components/scheduler/child/schedu
| |
69 task_queue_manager_->TaskRunnerForQueue(QueueId::DEFAULT_TASK_QUEUE)); | |
67 } | 70 } |
68 | 71 |
69 SchedulerHelper::~SchedulerHelper() { | 72 SchedulerHelper::~SchedulerHelper() { |
70 } | 73 } |
71 | 74 |
72 void SchedulerHelper::Shutdown() { | 75 void SchedulerHelper::Shutdown() { |
73 CheckOnValidThread(); | 76 CheckOnValidThread(); |
74 task_queue_manager_.reset(); | 77 task_queue_manager_.reset(); |
75 } | 78 } |
76 | 79 |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
212 } | 215 } |
213 | 216 |
214 void SchedulerHelper::RemoveTaskObserver( | 217 void SchedulerHelper::RemoveTaskObserver( |
215 base::MessageLoop::TaskObserver* task_observer) { | 218 base::MessageLoop::TaskObserver* task_observer) { |
216 CheckOnValidThread(); | 219 CheckOnValidThread(); |
217 if (task_queue_manager_) | 220 if (task_queue_manager_) |
218 task_queue_manager_->RemoveTaskObserver(task_observer); | 221 task_queue_manager_->RemoveTaskObserver(task_observer); |
219 } | 222 } |
220 | 223 |
221 } // namespace scheduler | 224 } // namespace scheduler |
OLD | NEW |