Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(298)

Side by Side Diff: components/scheduler/child/scheduler_helper.cc

Issue 1223163006: Implement PostDelayedTaskAt for guaranteed timer ordering (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add missing include to IdleHelperTest. Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
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
OLDNEW
« no previous file with comments | « components/scheduler/child/scheduler_helper.h ('k') | components/scheduler/child/scheduler_helper_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698