本帖最后由 f3858856 于 2013-9-21 11:44 编辑
原本一直玩的1.5.1,这些日子想升级版本了,下了1.6.2进入游戏,然后问题出现了。
这是1.5.1的截图,注意右上角的分配内存allocated memory是和我游戏划分内存相符的989mb
这是1.6.2的游戏截图,注意allocated memory的百分比只有20%的203mb,和我预划分的1011mb并不相符。
这是什么情况?
求问。
原本一直玩的1.5.1,这些日子想升级版本了,下了1.6.2进入游戏,然后问题出现了。
这是1.5.1的截图,注意右上角的分配内存allocated memory是和我游戏划分内存相符的989mb

这是1.6.2的游戏截图,注意allocated memory的百分比只有20%的203mb,和我预划分的1011mb并不相符。


这是什么情况?
求问。
我没看到图

图挂了看不到{:10_492:}
{:10_495:}木有人跟我的情况一样么?
看到图了...
不过这不是很正常么?他不会一次占用你全部的内存的。除非你这样启动复制代码一般来讲 Xms 不需要设置这么大,只要不超过 Xmx 都会在内存不够用的时候分配更多内存。Xms 设置太大可能导致启动速度会比较慢哦(当然只是电脑性能比较差的情况下。)
不过这不是很正常么?他不会一次占用你全部的内存的。除非你这样启动
- java -Xmx1024M -Xms1024M -jar Minecraft.jar
饿,这是正常情况么?可为啥1.5版本的分配内存是划分给予的100%,1.6.2的分配内存只有划分给予的20%?是因为启动器启动方式不同的原因么?allocated memory不能达到当初划分给minecraft的内存数不会影响游戏性能么?
多谢回复

我自己刚才又想了想,这个是不是就是意味着游戏内存的最小使用值和最大使用值?1.5的是100%是因为最小和最大都是同一个数1024,而1.6.2的20%是因为最小值和最大值是一个范围而不是同一个数值的原因?
多谢解答

Xms 是初始heap大小,也就是一开始的时候会分配给程序的内存数量。
在程序需要更多内存的时候,jvm 会给程序分配更多内存,一直到你设置的 Xmx 也就是最大 heap 大小。
只要你程序占用内存没有接近最大 heap 大小,而且你的程序没有明显卡顿(图形性能太差除外) 都是正常的。