android snapshot作用,Heap Snapshot工具

> [Speed up your app](http://blog.udinic.com/2015/09/15/speed-up-your-app?from=timeline&isappinstalled=0)

# Heap Snapshot能做什么?

获取Java堆内存详细信息,可以分析出内存泄漏的问题

# Heap Dump启动

![这里写图片描述](https://img-blog.csdn.net/20150928165053130)

在内存面包中,点击图中红色标注的按钮,就会显示我们的Heap Snapshot面包

# Heap Snapshot面板

![这里写图片描述](https://img-blog.csdn.net/20150928170254721)

# Heap Snapshot详细信息面板

![这里写图片描述](https://img-blog.csdn.net/20150928171540998)

该面板里的信息可以有三种类型:app heap/image heap/zygote heap.

分别代表app 堆内存信息,图片堆内存信息,zygote进程的堆内存信息。

## A区域

列举了堆内存中所有的类,一下是列表中列名:

| 名称 | 意义 |

| --- | --- |

| Total Count | 内存中该类的对象个数 |

| Heap Count | 堆内存中该类的对象个数 |

| Sizeof | 物理大小 |

| Shallow size | 该对象本身占有内存大小 |

| Retained Size | 释放该对象后,节省的内存大小 |

## B区域

当我们点击某个类时,右边的B区域会显示该类的实例化对象,这里面会显示有多少个实体,以及详细信息。

| 名称 | 意义 |

| --- | --- |

| depth | 深度 |

| Shallow Size | 对象本身内存大小 |

| Dominating Size | 管辖的内存大小 |

当你点击某个对象时,将展开该对象内部含有哪些对象,同时C区域也会显示哪些对象引用了该对象:

![这里写图片描述](https://img-blog.csdn.net/20150928224240950)

## C区域

![这里写图片描述](https://img-blog.csdn.net/20150928224746908)的某对象引用树对象,在这里面能看出其没谁引用了,比如在内存泄漏中,可以看出来它被谁引用,比如上图,引用树的第一行,可以看出来,该对象被Object[12]对象引用,索引值为1,那我们展开后,可以看到,该Object[12]是一个ArrayList.

![这里写图片描述](https://img-blog.csdn.net/20150928224836618)

# Android studio1.4的更新

1.4的面板有一些变化:

![这里写图片描述](https://img-blog.csdn.net/20151009171948678)

较之前添加了一个数据显示方式的选择,可以选择类名排列或者包名排列:

![这里写图片描述](https://img-blog.csdn.net/20151009172334227)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值