使用android studio查看内存,Android Studio Profiler使用心得 检测内存泄露问题

最近在分析app的内存泄露问题研究了下as的profiler功能  这里记录下个人心得

下面是个人心得

1.首先得出结论profiler不详细提供分析c或c++库进行的内存占用 其中包括android 系统使用的库或者自己的.so库 它们占用的内存在下面Native部分统计

2.profiler统计中详细可以查看的内存占用主要就是下图java部分和allocated部分了(不知道这个 看profiler的介绍 内存占用不管怎么算  数字都对应不上  哈哈)

3.我们看下面  shallow size 此堆中所有实例的总大小(以字节为单位)。其实算是比较真实的java堆内存

比如下图  java堆中占用5.2M内存  在选定的时间点 java占用shallow size统计的1M左右内存(单位为字节)

看左边String  数据  在选定时间段内  分配了202个  回收了182个  其中剩下的就是未回收的  其中会包括正在使用的部分或其他

点入可以看到  这个数据的分配时间和回收时间  没有回收的会看到 没有标注回收时间  可以在下方查看代码调用的地方  然后进行处理

个人经验  可以让某个功能反复运行几个周期 然后在profiler中选定整个周期时间  从开始内测分配的时间(坡度开始)到最终释放的时间(周期回收的坡底)这样  多个周期结束  这个时间段内  统计的内存占用  为整个过程完成后剩下的 占用情况  这样就可以进一步分析  内存泄露情况了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值