tracer ftrace笔记(23)—— 上层trace打印流程-TODO
1. ATRACE_INT 打印不出来分析
#define ATRACE_INT(name, value) atrace_int(ATRACE_TAG, name, value) // /system/core/libcutils/include/cutils/trace.h
static inline void atrace_int(uint64_t tag, const char* name, int32_t value)
{
if (CC_UNLIKELY(atrace_is_tag_enabled(tag))) {
void atrace_int_body(const char*, int32_t);
atrace_int_body(name, value);
}
}
atrace_is_tag_enabled(uint64_t tag)
atrace_get_enabled_tags()
atrace_init()
return atrace_enabled_tags;
atrace_init_once()
atrace_enabled_tags = atrace_get_property(); //获取 debug.atrace.tags.enableflags 属性的值
/data/local/tmp # getprop debug.atrace.tags.enableflags //没有抓trace时
0
/data/local/tmp # getprop debug.atrace.tags.enableflags //抓trace时
0x100496e
/data/local/tmp # getprop debug.atrace.tags.enableflags //结束抓trace
0
0x100496e = 1,0000,0000,0100,1001,0110,1110 //每bit表示含义见 /system/core/libcutils/include/cutils/trace.h
ATRACE_TAG_GRAPHICS 是 1<<1
atrace和systrace和ftrace: https://www.cnblogs.com/pyjetson/p/14946007.html //里面有讲解如何设置下去的。
/* 设置当前进程是否启用跟踪。 这用于防止 Zygote 进程内的跟踪。 */
atrace_set_tracing_enabled(bool enabled); //system/core/libcutils/include/cutils/trace.h ==> 都是使用这个在启动时关闭trace的,自己设置了仍然不生效, 设置成true/false都
打印不出来。
posted on 2024-04-11 17:54 Hello-World3 阅读(145) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2019-04-11 过滤器模式