提交 37847ca4 编写于 作者: C Chinmay Garde

Merge pull request #2571 from chinmaygarde/timeline

Update thread names in the Dart timeline.
上级 13f67343
......@@ -25,9 +25,9 @@ vars = {
# Note: When updating the Dart revision, ensure that all entries that are
# dependencies of dart are also updated
'dart_revision': 'd8df41c4835705834badf06ddeef1eee644b6312',
'dart_revision': '7060b6a07b74da52492be4469da5cd150a2ef940',
'dart_observatory_packages_revision': 'cf90eb9077177d3d6b3fd5e8289477c2385c026a',
'dart_root_certificates_revision': 'c3a41df63afacec62fcb8135196177e35fe72f71',
'dart_root_certificates_revision': 'aed07942ce98507d2be28cbd29e879525410c7fc',
'buildtools_revision': '565d04e8741429fb1b4f26d102f2c6c3b849edeb',
}
......
......@@ -4,10 +4,12 @@
#include "sky/shell/tracing_controller.h"
#include "base/threading/platform_thread.h"
#include "base/trace_event/trace_event.h"
#include "dart/runtime/include/dart_tools_api.h"
#include "sky/engine/core/script/dart_init.h"
#include "sky/engine/wtf/MakeUnique.h"
#include "sky/shell/shell.h"
#include <string>
......@@ -81,9 +83,6 @@ static void BaseTraceEventCallback(base::TraceTicks timestamp,
case TRACE_EVENT_PHASE_COUNTER:
type = Dart_Timeline_Event_Counter;
break;
case TRACE_EVENT_PHASE_METADATA:
type = Dart_Timeline_Event_Metadata;
break;
default:
// For TRACE_EVENT_PHASE_COMPLETE events, this callback still receives
// discrete begin-end pairs. This greatly simplifies things. We dont have
......@@ -148,6 +147,23 @@ static void BaseTraceEventCallback(base::TraceTicks timestamp,
}
}
static void TraceThreadMetadataToObservatory() {
const char* name = base::PlatformThread::GetName();
if (name == nullptr) {
return;
}
Dart_SetThreadName(name);
}
static void AddTraceMetadata() {
Shell::Shared().gpu_task_runner()->PostTask(
FROM_HERE, base::Bind(&TraceThreadMetadataToObservatory));
Shell::Shared().ui_task_runner()->PostTask(
FROM_HERE, base::Bind(&TraceThreadMetadataToObservatory));
Shell::Shared().io_task_runner()->PostTask(
FROM_HERE, base::Bind(&TraceThreadMetadataToObservatory));
}
void TracingController::StartTracing() {
if (tracing_active_) {
return;
......@@ -157,6 +173,8 @@ void TracingController::StartTracing() {
StartDartTracing();
StartBaseTracing();
AddTraceMetadata();
}
void TracingController::StartDartTracing() {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册