什么是JVM -server参数?

时间:2011-03-11 12:04:45

标签: java jvm

我在http://shootout.alioth.debian.org/中看到了Java -server用于编程语言基准测试。 我知道-server是运行JVM的参数。我想知道:

当我们使用-server参数时它是如何工作的? 我们可以将此参数用于java桌面应用程序吗?

感谢。

4 个答案:

答案 0 :(得分:25)

它只选择“Server Hotspot VM”。有关java的信息,请参见documentation (Solaris/Linux)

根据维基百科:

  

Sun的JRE有2个虚拟机,   一个叫Client,另一个叫Client   服务器。客户端版本已调整   用于快速装载。它利用了   解释,仅编译   经常运行的方法。服务器版本   加载更慢,付出更多努力   生产高度优化的JIT   汇编,收益率更高   性能

请参阅:http://en.wikipedia.org/wiki/HotSpot

答案 1 :(得分:13)

-server标志将向启动器指示hw是服务器类机器,对于java 6,这意味着至少2个核心和至少2 GB物理内存(即这些天的大多数机器) 。在服务器类机器上,deafult选择是

  • 吞吐量gc。
  • 初始堆大小为1 / 64th phys mem至1 GB
  • 最大堆大小为phys mem的1/4,最大为1 GB。
  • 服务器运行时编译器。

请注意,在32位窗口上没有服务器vm,因此客户端vm是默认值。 在其他32位机器上,如果hw是服务器类,则选择服务器vm,否则它是客户端。在64位计算机上没有客户端虚拟机,因此服务器虚拟机是默认值。

指向热点常见问题解答的链接:HotSpot

答案 2 :(得分:2)

您可以查看此博客以获取更多信息:http://victorpillac.wordpress.com/2011/09/11/notes-on-the-java-server-flag/

基本上在与32位窗口不同的最新机器上,默认情况下将打开该标志。 对于32位窗口,您需要下载JDK才能获得服务器系统。

答案 3 :(得分:0)