Android Developer:内存分析器

来源:互联网 发布:mac 照片和文稿 编辑:程序博客网 时间:2024/05/20 04:29

Heap Viewer,Memory Monitor和Allocation Tracker是用来可视化你的app使用内存的补充工具。 

  1. 使用Memory Monitor Tool来发现是否有不好的内存回收时间导致你的性能问题。 

  2. 运行Heap Viewer来确定获取或者保持不希望或者不必要的对象类型。 

  3. 使用Allocation Tracker来确定你的哪里的代码会存在问题。 

 

Memory Monitor 

----------------------------------------------------------------------------------------- 

  • 在图表中显示你的应用可用的和已使用的内存随时间的变化,伴随着垃圾回收事件发生下降。 

  • 提供了一种快速的方式来测试是否App变迟缓和过渡的垃圾回收事件相关。 

  • 提供了一个快速的方法来查看是否app的崩溃可能和耗尽内存相关。 

  • 在你的应用执行的时候运行,并且每秒钟更新一次。 

  • 帮助你快速的识别潜在的内存泄漏。 

  • 帮助你的应用程序的GC模式,并且确定它们是否如你所期望的健康运行。 

  • 它非常容易使用,并且很容理解你所看见的。 

  • 然而,Memory Monitor不会告诉你你的问题的原因是什么对象造成的,或者你哪里的代码造成的。 

图像

图1.Memory Monitor 

Heap Viewer 

----------------------------------------------------------------------------------------- 

  • 显示分配对象类型个数的快照。 

  • 显示每次垃圾回收事件自然发生或者由你触发的示例数据。 

  • 帮助你确定什么对象类型可能导致内存泄露。 

  • 然后,你必须自己从图中发现发生了什么变化。 

图像

图2.Heap Viewer 

 

Aloocation Tracker 

----------------------------------------------------------------------------------------- 

  • 展示你的代码什么时候,什么地方分配什么对象类型,它们的大小,分配线程,和跟踪栈。 

  • 通过重复的分配/释放模式帮助你重新认识内存流失。 

  • 可以和Heap Viewver联合使用来分总内存泄漏。例如,如果你看见一个位图对象在堆内存中驻存,你能使用Allocation Tracker查到它的分配地点。 

  • 然而,需要时间和经验来学习理解这个工具的输出。 

图像

图3.Allocation Tracker 

1 0
原创粉丝点击