本文主要是介绍如何利用DDMS Allocation Tracker 分析内存使用情况,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
how to minimum GC_FOR_ALLOC freed 57K, 7% free 48689K/51880K, paused 49ms, total 50ms
如何有效减少 系统GC 的日志输出数量?
我们在利用AS ES 开发android app 时,难免会遇到有GC 这样的日志产生,这是内存没有合理分配的原因;
先点击start tracking,然后一边操作界面事件的同时,一边点击get alloctions 来收集相关的内存分配信息,然后点击上方的item,让数量大小排序,也可以添加filter,从而快速定位到跟你app相关的包名或着类,根据信息,可以快速定位到类中的某一行,然后就是那一行出现GC 异常了,最后解决便是。
一、google官方文档解释
https://developer.android.com/studio/profile/investigate-ram.html#TrackAllocations
二、stackoverflow大神解释
http://stackoverflow.com/questions/20517908/why-so-many-gc-for-alloc-in-a-simple-app
http://stackoverflow.com/questions/14088159/how-to-minimize-gc-for-alloc-occurences
三、我前面写了一篇DDMS 的另一个开发神器,可以看下。
这篇关于如何利用DDMS Allocation Tracker 分析内存使用情况的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!