Java "Server-Class" 机器检测

在J2SE5.0中,Java launcher会根据机器配置自动选择使用ClientVM还是ServerVM。若机器拥有至少2个CPU及2GB内存,则视为server-class类型并选用ServerVM以提升运行效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 在J2SE5.0中,当一个java应用程序启动时,java launcher将试图检测当前运行的应用程序是否运行在一个"server-class"类型的机器。如果是"server-class"类型,则使用 Java HotSpot Server虚拟机(server VM)代替Java HotSpot Client(client VM)。它的目的是在你没有指定虚拟机启动类型选项的情况下提高应用程序执行性能。通常,server类型的虚拟机启动速度要比client类型的虚拟机 慢,但它在运行时具有更快的速度。


注意: 对于J2SE 5.0,判断是否是"server-class"类型机器的标准是一台机器至少有2个cpu,并且至少是2G以上的物理内存。


在J2SE 5.0里,server-class检测发生在既没有指定-server又没有指定-client虚拟机启动参数,并且应用程序运行在基于i586或者 Sparc 32位机器的Solaris或Linux操作系统情况下。如下表显示的那样,i586机器的Microsoft Windows平台将不进行server-class检查(也就是它默认情况下不是将机器当作server-class类型的机器),它默认就是使用 client VM。其余Sun-supported平台只采用server VM。

平台
默认VM
硬件体系操作系统
client VM
如果是 server-class则server VM;
否则client VM
server VM
SPARC 32-bitSolaris
 
X
 
i586Solaris
 
X
 
Linux
 
X
 
Microsoft Windows
X
 
 
SPARC 64-bitSolaris
 
X
AMD64Linux
 
X
Microsoft Windows
 
X

图例说明:   X = 默认VM      — = 对应平台不提供client VM

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值