美文网首页
leakcanary shark 库解析 一

leakcanary shark 库解析 一

作者: vb12 | 来源:发表于2023-12-25 13:02 被阅读0次

shark是leakcanary 2.0之后引入的hprof分析库,用于替代效率低下的haha库,
在leakcanary中所处的位置如下图所示,包括shark-hprof,shark-graph,shark,shark-android四个模块


image.png

shark-hprof用于读取hprof文件,解析hprof,里边定义了hprof数据格式,和java的类,对象,基本数据类型一致


image.png
shark-graph 用于索引hprof,找到HeapClass HeapInstance HeapObjectArray HeapPrimitiveArray
image.png
shark用于过滤泄漏对象,构建GC引用链,找到泄漏路径
image.png

shark-android里 AndroidObjectInspectors用于检查一个对象是否泄漏及其泄漏,不泄漏原因。AndroidReferenceMatchers用户过滤掉系统或者library泄漏。


image.png
leakcanary源码分析:
image.png
image.png

相关文章

网友评论

      本文标题:leakcanary shark 库解析 一

      本文链接:https://www.haomeiwen.com/subject/btdkndtx.html