Android内存优化(六)LeakCanary使用详解
https://cloud.tencent.com/developer/article/1034262
install方法会返回RefWatcher用来监控对象,LeakApplication中还要提供getRefWatcher静态方法来返回全局RefWatcher。最后为了举例,我们在一段存在内存泄漏的代码中引入LeakCanary监控,如下所示。
LeakCanary
leakcanary-android-no-op
07
LeakCanary.install方法会返回RefWatcher用来监控对象,LeakApplication中还要提供getRefWatcher静态方法来返回全局RefWatcher。最后为了举例,我们在一段存在内存泄漏的代码中引入LeakCanary监控,如下所示。
RefWatcher
LeakApplication.23(watch)
中还要提供getRefWatcher静态方法来返回全局RefWatcher。最后为了举例,我们在一段存在内存泄漏的
MainActivity存在内存泄漏,原因就是非静态内部类LeakThread持有外部类MainActivity的引用,LeakThread中做了耗时操作,导致MainActivity无法被释放。关于内存泄漏可以查看Android内存优化(三)避免可控的内存泄漏这篇文章。
refWa.watch this ActivityRef
hprof文件)和info信息分享出去,如下图所示。
hprof文件)和info信息分享出去,如下图所示。 watch
45
内存泄漏分析框架LeakCanary的使用与原理解析
https://blog.csdn.net/AndrExpert/article/details/103781575
JVM)在内存管理方面给我们变成带来的便利。JVM的这一大特性使Java程序员从繁琐的内存管理工作中得到了一定解放,但是JVM的这个特点的实现也是有代价的,并且它也并非万能
.23
Class Loader SubS Runtime
VM Stack】 Native
来源:oschina
链接:https://my.oschina.net/u/4409755/blog/4703256