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

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

Issue 2259013003: Move and rename TaskTimeTracker to public interface exposed to WebThread, use in WebPerf Agent. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remaining fixes for remove observer Created 4 years, 4 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 "platform/scheduler/renderer/renderer_scheduler_impl.h" 5 #include "platform/scheduler/renderer/renderer_scheduler_impl.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/debug/stack_trace.h" 8 #include "base/debug/stack_trace.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
(...skipping 1393 matching lines...) Expand 10 before | Expand all | Expand 10 after
1404 "to avoid this. Please see " 1404 "to avoid this. Please see "
1405 "https://developers.google.com/web/tools/chrome-devtools/profile/evaluat e-performance/rail" 1405 "https://developers.google.com/web/tools/chrome-devtools/profile/evaluat e-performance/rail"
1406 " and https://crbug.com/574343#c40 for more information."); 1406 " and https://crbug.com/574343#c40 for more information.");
1407 } 1407 }
1408 } 1408 }
1409 1409
1410 void RendererSchedulerImpl::ReportTaskTime(base::TimeTicks start_time, 1410 void RendererSchedulerImpl::ReportTaskTime(base::TimeTicks start_time,
1411 base::TimeTicks end_time) { 1411 base::TimeTicks end_time) {
1412 MainThreadOnly().queueing_time_estimator.OnToplevelTaskCompleted(start_time, 1412 MainThreadOnly().queueing_time_estimator.OnToplevelTaskCompleted(start_time,
1413 end_time); 1413 end_time);
1414 MainThreadOnly().long_task_tracker.RecordLongTask(
1415 start_time, end_time - start_time);
1416 UMA_HISTOGRAM_CUSTOM_COUNTS("RendererScheduler.TaskTime", 1414 UMA_HISTOGRAM_CUSTOM_COUNTS("RendererScheduler.TaskTime",
1417 (end_time - start_time).InMicroseconds(), 1, 1415 (end_time - start_time).InMicroseconds(), 1,
1418 1000000, 50); 1416 1000000, 50);
1419 } 1417 }
1420 1418
1421 LongTaskTracker::LongTaskTiming RendererSchedulerImpl::GetLongTaskTiming() { 1419 void RendererSchedulerImpl::AddTaskTimeObserver(
1422 return MainThreadOnly().long_task_tracker.GetLongTaskTiming(); 1420 WebThread::TaskTimeObserver* task_time_observer) {
1421 helper_.AddTaskTimeObserver(task_time_observer);
1422 }
1423
1424 void RendererSchedulerImpl::RemoveTaskTimeObserver(
1425 WebThread::TaskTimeObserver* task_time_observer) {
1426 helper_.RemoveTaskTimeObserver(task_time_observer);
1423 } 1427 }
1424 1428
1425 void RendererSchedulerImpl::OnQueueingTimeForWindowEstimated( 1429 void RendererSchedulerImpl::OnQueueingTimeForWindowEstimated(
1426 base::TimeDelta queueing_time) { 1430 base::TimeDelta queueing_time) {
1427 UMA_HISTOGRAM_TIMES("RendererScheduler.ExpectedTaskQueueingDuration", 1431 UMA_HISTOGRAM_TIMES("RendererScheduler.ExpectedTaskQueueingDuration",
1428 queueing_time); 1432 queueing_time);
1429 TRACE_COUNTER1(TRACE_DISABLED_BY_DEFAULT("renderer.scheduler"), 1433 TRACE_COUNTER1(TRACE_DISABLED_BY_DEFAULT("renderer.scheduler"),
1430 "estimated_queueing_time_for_window", 1434 "estimated_queueing_time_for_window",
1431 queueing_time.InMillisecondsF()); 1435 queueing_time.InMillisecondsF());
1432 } 1436 }
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
1488 case v8::PERFORMANCE_LOAD: 1492 case v8::PERFORMANCE_LOAD:
1489 return "load"; 1493 return "load";
1490 default: 1494 default:
1491 NOTREACHED(); 1495 NOTREACHED();
1492 return nullptr; 1496 return nullptr;
1493 } 1497 }
1494 } 1498 }
1495 1499
1496 } // namespace scheduler 1500 } // namespace scheduler
1497 } // namespace blink 1501 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698