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

Unified Diff: third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc

Issue 2437003002: [scheduler] Add type to scheduler::TaskQueue (Closed)
Patch Set: fix windows compilation Created 4 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
diff --git a/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc b/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
index 5a17f616dcb971ae9f4446b8c1cd466aa65370f2..967ec1240951223a0b2d39edb85a8f5ddc05d01c 100644
--- a/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
+++ b/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
@@ -79,8 +79,9 @@ RendererSchedulerImpl::RendererSchedulerImpl(
base::TimeDelta()),
render_widget_scheduler_signals_(this),
control_task_runner_(helper_.ControlTaskRunner()),
- compositor_task_runner_(helper_.NewTaskQueue(
- TaskQueue::Spec("compositor_tq").SetShouldMonitorQuiescence(true))),
+ compositor_task_runner_(
+ helper_.NewTaskQueue(TaskQueue::Spec(TaskQueue::QueueType::COMPOSITOR)
+ .SetShouldMonitorQuiescence(true))),
delayed_update_policy_runner_(
base::Bind(&RendererSchedulerImpl::UpdatePolicy,
base::Unretained(this)),
@@ -102,8 +103,10 @@ RendererSchedulerImpl::RendererSchedulerImpl(
base::Bind(&RendererSchedulerImpl::SuspendTimerQueueWhenBackgrounded,
weak_factory_.GetWeakPtr()));
- default_loading_task_runner_ = NewLoadingTaskRunner("default_loading_tq");
- default_timer_task_runner_ = NewTimerTaskRunner("default_timer_tq");
+ default_loading_task_runner_ =
+ NewLoadingTaskRunner(TaskQueue::QueueType::DEFAULT_LOADING);
+ default_timer_task_runner_ =
+ NewTimerTaskRunner(TaskQueue::QueueType::DEFAULT_TIMER);
TRACE_EVENT_OBJECT_CREATED_WITH_ID(
TRACE_DISABLED_BY_DEFAULT("renderer.scheduler"), "RendererScheduler",
@@ -249,12 +252,14 @@ scoped_refptr<TaskQueue> RendererSchedulerImpl::ControlTaskRunner() {
}
scoped_refptr<TaskQueue> RendererSchedulerImpl::NewLoadingTaskRunner(
- const char* name) {
+ TaskQueue::QueueType queue_type) {
helper_.CheckOnValidThread();
- scoped_refptr<TaskQueue> loading_task_queue(helper_.NewTaskQueue(
- TaskQueue::Spec(name).SetShouldMonitorQuiescence(true).SetTimeDomain(
- MainThreadOnly().use_virtual_time ? GetVirtualTimeDomain()
- : nullptr)));
+ scoped_refptr<TaskQueue> loading_task_queue(
+ helper_.NewTaskQueue(TaskQueue::Spec(queue_type)
+ .SetShouldMonitorQuiescence(true)
+ .SetTimeDomain(MainThreadOnly().use_virtual_time
+ ? GetVirtualTimeDomain()
+ : nullptr)));
loading_task_runners_.insert(loading_task_queue);
loading_task_queue->SetQueueEnabled(
MainThreadOnly().current_policy.loading_queue_policy.is_enabled);
@@ -270,11 +275,11 @@ scoped_refptr<TaskQueue> RendererSchedulerImpl::NewLoadingTaskRunner(
}
scoped_refptr<TaskQueue> RendererSchedulerImpl::NewTimerTaskRunner(
- const char* name) {
+ TaskQueue::QueueType queue_type) {
helper_.CheckOnValidThread();
// TODO(alexclarke): Consider using ApplyTaskQueuePolicy() for brevity.
scoped_refptr<TaskQueue> timer_task_queue(
- helper_.NewTaskQueue(TaskQueue::Spec(name)
+ helper_.NewTaskQueue(TaskQueue::Spec(queue_type)
.SetShouldMonitorQuiescence(true)
.SetShouldReportWhenExecutionBlocked(true)
.SetTimeDomain(MainThreadOnly().use_virtual_time
@@ -295,12 +300,14 @@ scoped_refptr<TaskQueue> RendererSchedulerImpl::NewTimerTaskRunner(
}
scoped_refptr<TaskQueue> RendererSchedulerImpl::NewUnthrottledTaskRunner(
- const char* name) {
+ TaskQueue::QueueType queue_type) {
helper_.CheckOnValidThread();
- scoped_refptr<TaskQueue> unthrottled_task_queue(helper_.NewTaskQueue(
- TaskQueue::Spec(name).SetShouldMonitorQuiescence(true).SetTimeDomain(
- MainThreadOnly().use_virtual_time ? GetVirtualTimeDomain()
- : nullptr)));
+ scoped_refptr<TaskQueue> unthrottled_task_queue(
+ helper_.NewTaskQueue(TaskQueue::Spec(queue_type)
+ .SetShouldMonitorQuiescence(true)
+ .SetTimeDomain(MainThreadOnly().use_virtual_time
+ ? GetVirtualTimeDomain()
+ : nullptr)));
unthrottled_task_runners_.insert(unthrottled_task_queue);
return unthrottled_task_queue;
}
@@ -1512,6 +1519,9 @@ void RendererSchedulerImpl::ReportTaskTime(TaskQueue* task_queue,
UMA_HISTOGRAM_CUSTOM_COUNTS("RendererScheduler.TaskTime",
(end_time_ticks - start_time_ticks).InMicroseconds(), 1,
1000000, 50);
+ UMA_HISTOGRAM_ENUMERATION("RendererScheduler.NumberOfTasksPerQueueType",
+ static_cast<int>(task_queue->GetQueueType()),
+ static_cast<int>(TaskQueue::QueueType::COUNT));
}
void RendererSchedulerImpl::AddTaskTimeObserver(

Powered by Google App Engine
This is Rietveld 408576698