-
Notifications
You must be signed in to change notification settings - Fork 61
task info
Carlyle-Lee edited this page Jul 10, 2020
·
3 revisions
支持展示任意时间段之间的任务运行情况。阶段内活跃的线程情况等。
- 阶段抓取到的任务展示
- 阶段内抓取到的运行任务时间戳展示
- 阶段内抓取到的线程,线程创建信息,任务在线程上的分布图展示
- 版本分析对比功能。
- Lens 初始化时,为Lens 设置hook 框架实现类。
- 进入Lens 设置页面,开启
任务分析
功能或者在Lens 初始化的时候开启任务分析
功能。 - 点击任务分析的任务耗时栏,进入
任务分析
界面。(带背景的文本都可点击跳转) - 页面中三个Tab 支持点击切换与左右滑动切换。
- Gap 页面中,点击Cost、 CPU_T、ST 支持排序。
- 搜索框支持搜索并高亮展示结果。
- 保存数据后,支持与历史版本进行分析对照。
Lens 本身并未提供hook 能力。任务分析功能对外暴露了TimeStampUtil
类用于侵入性的打点分析。并提供了任务分析入口,数据展示等能力。
TimeStampUtil
类信息,详见API 文档。
说明: 开源项目Yhook 实现了Lens hook 相关能力的支持。引入后即可支持Lens 分析功能。也可以自行实现IHookFramework
接口,自行hook 埋点,实现任务分析能力。
注意: hook 有风险,hook 能力请在debug 下使用。
gralde dependency
dependencies {
debugImplementation 'carl.lee.yhook:lens-yhook:1.1.0'
}
Lens init:
LensUtil.buildConfig().setHookFrameWorkImpl(new HookFramework())