4

Oracle 文档说:

-服务器

选择 Java HotSpot 服务器虚拟机。在支持 64 位的 jdk 上,仅支持 Java HotSpot Server VM,因此 -server 选项是隐式的。这在未来的版本中可能会发生变化。

有关默认 VM 选择,请参阅服务器级机器检测

因为它在 64 位 JDK 中是隐式的,所以我们不需要在运行 commandjava时添加这个参数,对吗?

此处的进一步文档说,服务器级机器是具有至少 2 个 CPU 和至少 2GB 物理内存的机器。这仍然适用/适用于JDK7u25吗?

从文档中可以看出,如果将 -server 选项与服务器级机器一起使用,它会提高性能,我想知道还有其他具体优势吗?

4

1 回答 1

5

因为它在 64 位 JDK 中是隐式的,所以我们不需要在运行命令 java 时添加这个参数,对吗?

正确的。如果您运行的是 64 位 JVM,那么如果用户通过了该-server选项,则没有区别。

此处的进一步文档说,服务器级机器是具有至少 2 个 CPU 和至少 2GB 物理内存的机器。这仍然适用/适用于JDK7u25吗?

根据您对 64 位 JVM 的第一次引用,此标准仅用于 32 位运行时。

从文档中可以看出,如果将 -server 选项与服务器级机器一起使用,它会提高性能,我想知道还有其他具体优势吗?

正如您提到的第一个报价,-server启用Java HotSpot Server VM。这意味着 JVM 将进行更积极的即时 (JIT) 编译优化。对于非服务器级机器,这是禁用的,因为进行优化可能会使程序减慢太多,但是对于现代机器,您通常有多余的内核,因此当您的程序插入时,优化 JIT 可能会在其自己的线程中运行.

于 2013-07-12T06:34:31.500 回答