
当我在Android Studio中分析app的内存时,我可以看到不同类别内存的消耗,
但是当我转储Java堆(中间按钮)时,我只得到堆的分配,
这是按钮名称的预期.但到目前为止我仍然可以看到已分配的char数组和字符串,但正如我们在最近的版本中所知,来自String的char数组被移动到本机堆,String类只能通过本机方法访问它们,所以事实证明这个堆转储显示还有原生堆.我对吗?图形堆怎么样?
解决方法:
虽然它不是任何方式的权威来源,我和其他人试图解释java内存使用here.据我所知(有人与ART或Davlik合作可以给你一个更明确的答案)只有一个堆可用于整个应用程序,没有特定的图形堆.
AndroID Studio可能向您展示的是图形 *** 作消耗了多少堆.类似于Stack(绿色)内存段如何显示当前调用堆栈正在消耗的内容.您可以通过突出显示细分来查看代码中如何反映这种情况:
使用此视图时,您应该记住从下拉列表中选择应用程序堆:
原住民和Java段显示直接通过SDK / Java框架分配了多少内存,以及通过底层结构本地分配了多少内存. (他们不会在您的应用程序中显示不同的内存区域,这看起来很混乱 – 请参阅最后的链接)
有关Profiler向您展示的内容的最佳概述是在Developer Documentation中,其中还概述了System Image和zygote堆对您的影响.
总结以上是内存溢出为你收集整理的如何在Android Studio 3.0中查看本机和图形内存的分配全部内容,希望文章能够帮你解决如何在Android Studio 3.0中查看本机和图形内存的分配所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)