加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – Android VM堆大小

发布时间:2020-12-15 04:07:59 所属栏目:Java 来源:网络整理
导读:我无法理解什么是 android app堆大小. 它是整体最大内存,我可以从 java和frome本机代码分配?如果是,那么为什么在我的谷歌nexus S.这个代码 Runtime rt = Runtime.getRuntime();long maxMemory = rt.maxMemory();Log.v("onCreate","maxMemory:" + Long.toStr
我无法理解什么是 android app堆大小.
它是整体最大内存,我可以从 java和frome本机代码分配?如果是,那么为什么在我的谷歌nexus S.这个代码

Runtime rt = Runtime.getRuntime();
long maxMemory = rt.maxMemory();
Log.v("onCreate","maxMemory:" + Long.toString(maxMemory));

dysplays 50331648 = 48MB
但是dumpsys meminfo显示
?Native 13 16 12 84028 83457 18

我可以轻松分配说74MB

int size = 1024*1024*74;
char* s = new char[size];

解决方法

好吧,堆大小实际上是一个编程概念,远远超过它的Android.您可以阅读它 here,但它确实(简短的故事)VM使用了多少内存,并且它是独立于您的应用程序分配的.

分配给您的应用程序的内存是动态分配的.因此,如果您要求您的应用分配更多内存,您会看到它增长.但它无法无限增长.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读