写点什么

JVM 启动参数学习笔记一

用户头像
风翱
关注
发布于: 3 小时前

JVM 启动参数学习笔记一


一、JVM 启动参数简介

以-开头为标准参数,所有的 JVM 都要实现这些参数,并且向后兼容。-D 设置系统属性。以-X 开头为非标准参数,基本都是传给 JVM 的,默认 JVM 实现这些参数的功能,但是并不保证所有 JVM 实现都满足,且不保证向后兼容。可以使用 java -X 命令来查看当前 JVM 支持的非标准参数。以-XX:开头为非稳定参数,专门用于控制 JVM 的行为,跟具体的 JVM 实现有关,随时可能会在下个版本取消。-XX: +-Flags 形式,+-是对布尔值进行开关。-XX: key=value 形式,指定某个选项的值。


二、JVM 启动参数--运行模式

1.-server:设置 JVM 使用 server 模式,特点是启动速度比较慢,但运行时性能和内存管理效率很高,适用于生产环境。在具有 64 位能力的 JDK 环境下将默认启用该模式,而忽略-client 参数。

2.-client:JDK1.7 之前在 32 位的 x86 机器上的默认值是-client 选项。设置 JVM 使用 client 模式,特点是启动速度比较快,但运行时性能和内存管理效率不高,通常用于客户端应用程序或者 PC 应用开发和调试。此外,我们知道 JVM 加载字节码后,可以解释执行,也可以编译成本地代码再执行,所以可以配置 JVM 对字节码的处理模式。

3.-Xint:在解释模式(interpreted mode)下运行,-Xint 标记会强制 JVM 解释执行所有的字节码,这当然会降低运行速度,通常低 10 倍或更多。

4.-Xcomp:-Xcomp 参数与-Xint 正好相反,JVM 在第一次使用时会把所有的字节码编译成本地代码,从而带来最大程度的优化。

5.-Xmixed:-Xmixed 是混合模式,将解释模式和编译模式进行混合使用,有 JVM 自己决定,这是 JVM 的默认模式,也是推荐模式。我们使用 java -version 可以看到 mixed mode 等信息。


发布于: 3 小时前阅读数: 2
用户头像

风翱

关注

还未添加个人签名 2017.11.24 加入

勇于尝试,持续成长

评论

发布
暂无评论
JVM启动参数学习笔记一