跟踪

摘要

函数

ATrace_beginAsyncSection(const char *sectionName, int32_t cookie)
void
写入跟踪消息,指示给定代码段已开始。
ATrace_beginSection(const char *sectionName)
void
写入跟踪消息,指示指定代码段已开始。
ATrace_endAsyncSection(const char *sectionName, int32_t cookie)
void
写入跟踪消息,指示当前方法已结束。
ATrace_endSection()
void
写入跟踪消息,指示给定代码段已结束。
ATrace_isEnabled()
bool
如果跟踪已启用,则返回 true。
ATrace_setCounter(const char *counterName, int64_t counterValue)
void
写入跟踪消息,指示给定计数器的值。

函数

ATrace_beginAsyncSection

android/trace.h 中声明
void ATrace_beginAsyncSection(
  const char *sectionName,
  int32_t cookie
)

写入跟踪消息,指示给定代码段已开始。

后面必须紧跟对 ATrace_endAsyncSection 的调用,使用相同的 methodName 和 cookie。与 ATrace_beginSectionATrace_endSection 不同,异步事件无需嵌套。用于开始事件的名称和 cookie 必须用于结束事件。

自 API 级别 29 起可用。

详情
参数
sectionName
要在跟踪中显示的方法名称。
cookie
用于区分同时发生事件的唯一标识符

ATrace_beginSection

android/trace.h 中声明
void ATrace_beginSection(
  const char *sectionName
)

写入跟踪消息,指示指定代码段已开始。

此调用后面必须紧跟在同一线程上对 ATrace_endSection 的相应调用。

注意:目前,竖线字符 '|' 和换行符 '\n' 在跟踪机制内部使用。如果 sectionName 包含这些字符,它们将在跟踪中被替换为空格字符。

自 API 级别 23 起可用。

ATrace_endAsyncSection

android/trace.h 中声明
void ATrace_endAsyncSection(
  const char *sectionName,
  int32_t cookie
)

写入跟踪消息,指示当前方法已结束。

对于每个对 ATrace_beginAsyncSection 使用相同的名称和 cookie 的调用,必须精确调用一次。

自 API 级别 29 起可用。

详情
参数
sectionName
要在跟踪中显示的方法名称。
cookie
用于区分同时发生事件的唯一标识符

ATrace_endSection

android/trace.h 中声明
void ATrace_endSection()

写入跟踪消息,指示给定代码段已结束。

此调用之前必须有在同一线程上对 ATrace_beginSection 的相应调用。调用此方法将标记最近开始的代码段的结束,因此必须注意确保 ATrace_beginSection/ATrace_endSection 对已正确嵌套并从同一线程调用。

自 API 级别 23 起可用。

ATrace_isEnabled

android/trace.h 中声明
bool ATrace_isEnabled()

如果跟踪已启用,则返回 true。

仅在跟踪启用时使用此方法以避免昂贵的计算。

自 API 级别 23 起可用。

ATrace_setCounter

android/trace.h 中声明
void ATrace_setCounter(
  const char *counterName,
  int64_t counterValue
)

写入跟踪消息,指示给定计数器的值。

自 API 级别 29 起可用。

详情
参数
counterName
要在跟踪中显示的计数器名称。
counterValue
计数器值。