LeakCannary
为什么各大厂自研的内存泄漏检测框架都要参考 LeakCanary?因为它是真强啊!_慕课手记
内存快照是在触发了onDestory中做的
目前,LeakCanary 支持以下五种 Android 场景中的内存泄漏监测:
- 1、已销毁的 Activity 对象(进入 DESTROYED 状态);
- 2、已销毁的 Fragment 对象和 Fragment View 对象(进入 DESTROYED 状态);
- 3、已清除的的 ViewModel 对象(进入 CLEARED 状态);
- 4、已销毁的的 Service 对象(进入 DESTROYED 状态);
- 5、已从 WindowManager 中移除的 RootView 对象;
KOOM
1、有一个线程一直检测阈值,主动dump
2、fork子进程dump内存文件
KOOM使用
一文看懂快手KOOM高性能监控方案-一一网络
初始化:
Java-OOM报告获取
当内存异常时,采集内存镜像、分析之后会生成一份json文件报告
手动获取
实时监听报告生成
设置Uploader
自定义需求,配置KConfig设置需要的各项参数
默认heapRatio的设置,会根据最大内存来调整设置更合理的值
KOOM接入遇到的问题:
koom接入遇到的一个多进程问题_Zhongyi_Li的博客-CSDN博客
干掉OOM?快手开源大招 KOOM 剖析
干掉OOM?快手开源大招 KOOM 剖析
快手开源KOOM浅析,一个高性能线上内存监控方案