leakcanary:原理
来源:互联网 发布:海岛奇兵数据查询 编辑:程序博客网 时间:2024/06/05 05:01
LeakCanary 流程图
LeakCanary 的机制如下:
RefWatcher.watch()
会以监控对象来创建一个KeyedWeakReference
弱引用对象- 在
AndroidWatchExecutor
的后台线程里,来检查弱引用已经被清除了,如果没被清除,则执行一次 GC - 如果弱引用对象仍然没有被清除,说明内存泄漏了,系统就导出 hprof 文件,保存在 app 的文件系统目录下
HeapAnalyzerService
启动一个单独的进程,使用HeapAnalyzer
来分析 hprof 文件。它使用另外一个开源库HAHA。HeapAnalyzer
通过查找KeyedWeakReference
弱引用对象来查找内在泄漏HeapAnalyzer
计算KeyedWeakReference
所引用对象的最短强引用路径,来分析内存泄漏,并且构建出对象引用链出来。- 内存泄漏信息送回给
DisplayLeakService
,它是运行在 app 进程里的一个服务。然后在设备通知栏显示内存泄漏信息。
0 0
- leakcanary:原理
- LeakCanary原理分析
- Android-LeakCanary原理分析
- LeakCanary原理解析
- LeakCanary原理解析
- LeakCanary 原理浅析
- LeakCanary核心原理源码浅析
- LeakCanary 流程及原理分析
- 内存检测工具LeakCanary原理解析
- LeakCanary
- LeakCanary
- LeakCanary
- LeakCanary
- leakcanary原理分析与AppsFly内存泄漏
- Android 内存泄露检测工具 LeakCanary 的监控原理
- LeakCanary(二)内存泄露监测原理研究
- android专题研究--内存泄漏(leakcanary用法与实现原理)
- LeakCanary开源项目(使用及原理github项目文档的翻译)
- 封装函数
- 对象锁:传递对象锁
- Java PriorityQueue是使用
- V-REP初学者笔记
- Java基础(八) Java修饰符及接口详解之(二) 内部类
- leakcanary:原理
- WordPress 自动更新设置 绕过FTP
- C#对象
- javabean学习与小结
- C# 在腾讯的发展
- SVN的下载与安装
- 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程 找出1000以内的所有完 数。
- 改变viewpager滑动速度
- 修改老项目时 遇到的一些警告~