我们如何在Android上定期轮询堆大小(本机和托管),以便我们可以绘制x:HeapSize-y:GCIteration的散点图?我一直在考虑两种方法:
1稍微破解DDMS代码以将内存使用部分分开作为轮询工具的起点。但它不包括本机堆信息,我不确定攻击代码的难度。
2每次GC运行后运行dumpsys meminfo
。我已经可以通过这种方法获得数据。但我对数据的解释有点困惑。具体而言,列native
和dalvik
的含义是什么?
答案 0 :(得分:0)
这两种方法都有意义。第二个更容易实现,但我们需要弄清楚输出的确切含义,最好通过阅读dumpsys
的源代码来完成。