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

Side by Side Diff: components/scheduler/renderer/renderer_scheduler.cc

Issue 2093983002: scheduler: Tell v8 about the current RAIL mode (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add missing gyp dependencies Created 4 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/renderer/renderer_scheduler.h" 5 #include "components/scheduler/renderer/renderer_scheduler.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/feature_list.h" 8 #include "base/feature_list.h"
9 #include "base/memory/ptr_util.h" 9 #include "base/memory/ptr_util.h"
10 #include "base/message_loop/message_loop.h" 10 #include "base/message_loop/message_loop.h"
(...skipping 10 matching lines...) Expand all
21 const base::Feature kExpensiveTaskBlockingPolicyFeature{ 21 const base::Feature kExpensiveTaskBlockingPolicyFeature{
22 "SchedulerExpensiveTaskBlocking", base::FEATURE_ENABLED_BY_DEFAULT}; 22 "SchedulerExpensiveTaskBlocking", base::FEATURE_ENABLED_BY_DEFAULT};
23 } 23 }
24 24
25 RendererScheduler::RendererScheduler() { 25 RendererScheduler::RendererScheduler() {
26 } 26 }
27 27
28 RendererScheduler::~RendererScheduler() { 28 RendererScheduler::~RendererScheduler() {
29 } 29 }
30 30
31 RendererScheduler::RAILModeObserver::~RAILModeObserver() = default;
32
31 // static 33 // static
32 std::unique_ptr<RendererScheduler> RendererScheduler::Create() { 34 std::unique_ptr<RendererScheduler> RendererScheduler::Create() {
33 // Ensure worker.scheduler, worker.scheduler.debug and 35 // Ensure worker.scheduler, worker.scheduler.debug and
34 // renderer.scheduler.debug appear as an option in about://tracing 36 // renderer.scheduler.debug appear as an option in about://tracing
35 base::trace_event::TraceLog::GetCategoryGroupEnabled( 37 base::trace_event::TraceLog::GetCategoryGroupEnabled(
36 TRACE_DISABLED_BY_DEFAULT("worker.scheduler")); 38 TRACE_DISABLED_BY_DEFAULT("worker.scheduler"));
37 base::trace_event::TraceLog::GetCategoryGroupEnabled( 39 base::trace_event::TraceLog::GetCategoryGroupEnabled(
38 TRACE_DISABLED_BY_DEFAULT("worker.scheduler.debug")); 40 TRACE_DISABLED_BY_DEFAULT("worker.scheduler.debug"));
39 base::trace_event::TraceLog::GetCategoryGroupEnabled( 41 base::trace_event::TraceLog::GetCategoryGroupEnabled(
40 TRACE_DISABLED_BY_DEFAULT("renderer.scheduler.debug")); 42 TRACE_DISABLED_BY_DEFAULT("renderer.scheduler.debug"));
(...skipping 11 matching lines...) Expand all
52 const std::string group_name = base::FieldTrialList::FindFullName( 54 const std::string group_name = base::FieldTrialList::FindFullName(
53 kExpensiveTaskBlockingPolicyFeature.name); 55 kExpensiveTaskBlockingPolicyFeature.name);
54 blocking_allowed |= base::StartsWith(group_name, "Enabled", 56 blocking_allowed |= base::StartsWith(group_name, "Enabled",
55 base::CompareCase::INSENSITIVE_ASCII); 57 base::CompareCase::INSENSITIVE_ASCII);
56 scheduler->SetExpensiveTaskBlockingAllowed(blocking_allowed); 58 scheduler->SetExpensiveTaskBlockingAllowed(blocking_allowed);
57 } 59 }
58 return base::WrapUnique<RendererScheduler>(scheduler.release()); 60 return base::WrapUnique<RendererScheduler>(scheduler.release());
59 } 61 }
60 62
61 // static 63 // static
62 const char* RendererScheduler::UseCaseToString(UseCase use_case) {
63 switch (use_case) {
64 case UseCase::NONE:
65 return "none";
66 case UseCase::COMPOSITOR_GESTURE:
67 return "compositor_gesture";
68 case UseCase::MAIN_THREAD_CUSTOM_INPUT_HANDLING:
69 return "main_thread_custom_input_handling";
70 case UseCase::SYNCHRONIZED_GESTURE:
71 return "synchronized_gesture";
72 case UseCase::TOUCHSTART:
73 return "touchstart";
74 case UseCase::LOADING:
75 return "loading";
76 case UseCase::MAIN_THREAD_GESTURE:
77 return "main_thread_gesture";
78 default:
79 NOTREACHED();
80 return nullptr;
81 }
82 }
83
84 // static
85 const char* RendererScheduler::InputEventStateToString( 64 const char* RendererScheduler::InputEventStateToString(
86 InputEventState input_event_state) { 65 InputEventState input_event_state) {
87 switch (input_event_state) { 66 switch (input_event_state) {
88 case InputEventState::EVENT_CONSUMED_BY_COMPOSITOR: 67 case InputEventState::EVENT_CONSUMED_BY_COMPOSITOR:
89 return "event_consumed_by_compositor"; 68 return "event_consumed_by_compositor";
90 case InputEventState::EVENT_FORWARDED_TO_MAIN_THREAD: 69 case InputEventState::EVENT_FORWARDED_TO_MAIN_THREAD:
91 return "event_forwarded_to_main_thread"; 70 return "event_forwarded_to_main_thread";
92 default: 71 default:
93 NOTREACHED(); 72 NOTREACHED();
94 return nullptr; 73 return nullptr;
95 } 74 }
96 } 75 }
97 76
98 } // namespace scheduler 77 } // namespace scheduler
OLDNEW
« no previous file with comments | « components/scheduler/renderer/renderer_scheduler.h ('k') | components/scheduler/renderer/renderer_scheduler_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698