JVM的client与server模式的区别

PS:本文针对的是HotSpot的JVM,需要注意的是64位JDK不支持client模式,建议使用32位的JDK来进行切换client与server模式
如果使用java -version指令后会看到以下内容:

java version "1.6.0_33"
Java(TM) SE Runtime Environment (build 1.6.0_33-b05)
Java HotSpot(TM) Client VM (build 20.8-b03, mixed mode)
  1. 第一行为JDK的版本信息
  2. 第二行为JRE的版本信息
  3. 第三行为JVM的信息,其中就包含了JVM的运行模式。

在HotSpot JVM中代码的运行和编译是通过解释器和JIT编译器的,而client模式和server模式指的是就是使用的是哪个编译器,其中client模式指的是使用Client编译器(也叫做C1编译器);而server模式指的是使用Server编译器(也叫做C2编译器) 。
Java HotSpot(TM) Client VM (build 20.8-b03, mixed mode)中的Client指的就是使用的是Client编译器,而在括号中的mixed mode指的是虚拟机同时使用解释器和编译器。如果为Java HotSpot(TM) 64-Bit Client VM (build 20.8-b03, mixed mode)则意味着为64位虚拟机(即包含“64-Bit“这个字符串),否则为32位。

  1. 使用-server参数选择使用Server编译器。
  2. 使用-client参数选择使用Client编译器 。
  3. 使用-Xint参数强制虚拟机只使用解释器。
  4. 使用-Xcomp参数强制虚拟机优先使用编译器(如果编译无法进行还是会使用解释器)。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值