Index: base/task_scheduler/task_tracker.cc |
diff --git a/base/task_scheduler/task_tracker.cc b/base/task_scheduler/task_tracker.cc |
index f38ec06130e6bebfd77d469478a34dea93b34951..85ca67f43b2aff007c158ac3eae21e703bfd097f 100644 |
--- a/base/task_scheduler/task_tracker.cc |
+++ b/base/task_scheduler/task_tracker.cc |
@@ -10,6 +10,7 @@ |
#include "base/thread_task_runner_handle.h" |
#include "base/threading/sequenced_task_runner_handle.h" |
#include "base/threading/thread_restrictions.h" |
+#include "base/trace_event/trace_event.h" |
namespace base { |
namespace internal { |
@@ -18,6 +19,10 @@ namespace { |
const char kQueueFunctionName[] = "base::PostTask"; |
+// This name conveys that a Task is run by the task scheduler without revealing |
+// its implementation details. |
+const char kRunFunctionName[] = "TaskSchedulerRunTask"; |
+ |
// Upper bound for the |
// TaskScheduler.BlockShutdownTasksPostedDuringShutdown histogram. |
const HistogramBase::Sample kMaxBlockShutdownTasksPostedDuringShutdown = 1000; |
@@ -102,6 +107,8 @@ void TaskTracker::RunTask(const Task* task) { |
new ThreadTaskRunnerHandle(task->single_thread_task_runner_ref)); |
} |
+ TRACE_TASK_EXECUTION(kRunFunctionName, *task); |
+ |
debug::TaskAnnotator task_annotator; |
task_annotator.RunTask(kQueueFunctionName, *task); |
} |