zoukankan      html  css  js  c++  java
  • 内存泄漏分析 mat 使用 activity泄漏

    https://github.com/square/leakcanary
    
    square 公司出品
    
    mat 下载地址:
    http://pan.baidu.com/s/1kVPoIxx
    

    两天,一个内存泄漏 activity 泄漏 ,搞了两天。毕竟是有开发经验的程序员,工作时间久了,你说你没有用过mat?没有过内存优化分析,内存泄漏研究? 呵呵。

    第一步:使用stadio 生成hprof文件

    这里写图片描述

    第一步,先用gc 回收回收内存,如果有内存泄漏的话,gc是回收不了的。多点几次。
    第二部:
    开始生成内存文件。点一下就好了,过一会它会自己生成。


    这里写图片描述

    然后点击去分析你的leaked Activity


    这里写图片描述

    然后:
    1.点击这里,可以找到你生成的内存文件。
    2.因为mat 是Java内存分析,这里生成的是android的,所以,你要转一下。


    这里写图片描述

    打开mat


    这里写图片描述
    点这里的1,然后在里面搜索你分析出来的内存泄漏的activity的名字,比如:MainActivity


    这里写图片描述

    如图,搞一下


    这里写图片描述

    然后在这里看哪里在引用他。

    一般情况,会有如下情况:
    1。静态的变量
    2。post 的一些Runnable ,activity销毁了,Runnable没有被移除。
    3。反正就是一些东西没释放,这些东西还占用着activity。

  • 相关阅读:
    算法笔记--数据结构--并查集
    帮助
    八数码难题神奇!!!
    题解 P1197 【[JSOI2008]星球大战】
    线段树1对于Pushdown的理解
    最短路问题之SPFA
    并查集(路径压缩)
    并查集(KRUSKAL算法)
    初识单调栈
    初识单调队列
  • 原文地址:https://www.cnblogs.com/caoxinyu/p/6647749.html
Copyright © 2011-2022 走看看