java支持的最大内存

一.jdk各个版本在不同操作系统中支持的最大内存是不一样的,但是可以通过以下方法来进行测试 

c:>java -Xmxxxxxm(g) -version 

其中xxxx为最大内存数值, m(g)是内存的计量单位,如果命令能够正确显示出jdk的版本等信息,说明当前jdk支持测试的最大内存数量,否则说明测试的内存超出了jdk支持的最大值,

例如: 

c:\\documents and settings\\fengbaoxp>java -xmx1g -version 

java version \"1.6.0_03\" 

java(tm) se runtime environment (build 1.6.0_03-b05) 

java hotspot(tm) client vm (build 1.6.0_03-b05, mixed mode) 

命令正确显示了jdk信息,说明当前jdk能够支持1g的内存。 

c:\\documents and settings\\fengbaoxp>java -xmx2g -version 

error occurred during initialization of vm 

could not reserve enough space for object heap 

could not create the java virtual machine. 

 

-bash-3.00$ ./java -Xmx2048m -version

java version "1.6.0_04"

Java(TM) SE Runtime Environment (build 1.6.0_04-b12)

Java HotSpot(TM) Server VM (build 10.0-b19, mixed mode)

-bash-3.00$ ./java -Xmx1024m -version

java version "1.6.0_04"

Java(TM) SE Runtime Environment (build 1.6.0_04-b12)

Java HotSpot(TM) Server VM (build 10.0-b19, mixed mode)

-bash-3.00$ ./java -Xmx4096m -version

Invalid maximum heap size: -Xmx4096m

The specified size exceeds the maximum representable size.

Could not create the Java virtual machine.

 

命令打印出错误信息,说明当前jdk不能支持2g的内存。 

 

本机测试:



二.jre还区分client和server两个版本 

client版本加载速度较快,但是支持内存比server要少,比较适合桌面应用; 

server版本加载速度较慢,但是运行比较快而且稳定,一些jre还针对server版进行优化,所以我们运行服务端程序最好使用server版。 

说明当前jre为client版 

说明当前jre为server版 

jdk一般默认为client版,要想修改为server版,需要修改 [jre安装目录]/lib/i386/jvm.cfg文件 

将: 

-client known 

-server known 

调整顺序改为: 

-server known 

-client known

如下所示:


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值