为什么Java中,-server模式下运行,说的版本是“混合模式”?当我看到这种情况时,是否意味着JVM并未真正以纯服务器模式加载?为什么运行在服务器模式下的Java说版本是“混合模式”?
回答
服务器模式并不意味着“不混合”。这些是不同的设置。
混合是否意味着JVM将拌匀编译和解释的代码。你可以选择使用开关-Xint切换到完全解释模式(通常你不想这样做)。
服务器模式意味着热点编译器将与服务器的设置运行。一般的假设是,服务器模式下的虚拟机是长时间运行的,所以要考虑到这些优化。
所以,如果你看到的混合模式,这是没有任何迹象表明你的虚拟机是不是在服务器模式下运行。
编辑:如果您想查询什么是真正在运行,尝试
System.out.println(System.getProperty("java.vm.name"));
System.out.println(System.getProperty("java.vm.info"));
至少在太阳VM或OpenJDK的输出这会给你一个提示。您可能会注意到,如果您位于64位系统上,您将始终运行服务器虚拟机。
`-Xcomp`仅用于copmiled。你不想这样做。 /顺便说一句,Server HotSpot有它自己的解释器(它需要分析信息,这使得它比bog标准解释稍慢)。 – 2011-02-03 22:39:01
客户端和服务器的热点编译器包含在Java运行时环境。
默认情况下,客户的编译器已启用,但激烈的服务器端应用程序,可以运行带有-server运行时选择服务器编译器。 热点虚拟机通常以混合模式运行,如-version输出中所示。混合模式意味着Hotspot在满足多个条件时动态地将Java字节码编译为本地代码,包括方法通过解释器运行的次数。混合运行时模式通常会产生最佳性能。
这实际上表明-server选项禁用混合模式。这篇文章是从2000年开始的,所以它可能也不是那么准确。 – extraneon 2011-02-03 20:08:05
- 1. 在服务器模式下运行gwt
- 2. 运行testng混合模式
- 3. 什么是混合模式程序集?
- 4. 什么是服务器SQL模式?
- 5. css混合混合模式和蒙版
- 6. 为什么是代理模式的结构模式,为什么是状态模式的行为模式?
- 7. 为什么bootstrap 3只能在symfony2开发模式下运行,而不是在prod模式下运行?
- 8. 为什么在混合模式程序集中不能使用强版本?
- 9. 为什么我应该在混合模式下使用新的本地对象?
- 10. 为什么混合混合模式不能处理CSS中的字体/文本?
- 11. 在服务器模式下在Tomee上运行Hypersonic db
- 12. 为什么实模式应用程序无法在保护模式下运行?
- 13. 如何在容错模式下运行Spring Cloud Config服务器?
- 14. 混合模式程序集是针对版本'v1.1.4322'构建的
- 15. 脚本在调试模式下运行良好,但不能在IE浏览器运行模式下运行
- 16. 为什么java服务器的JFrame在调试模式下工作,但不是在正常执行模式下工作?
- 17. 是否在安全模式下运行PHP有什么区别?
- 18. PHPUnit - 为什么PHPUnit似乎在严格模式下运行?
- 19. 为什么SelectTemplate方法在调试模式下运行2次?
- 20. 混合模式CSS3
- 21. IE9兼容模式:它模拟的是什么版本?
- 22. Solr 4.10.1通过java代码在SOLRCLOUD模式下运行的命令是什么
- 23. self.class.name在混合式模块
- 24. webpack dev服务器的懒惰模式是做什么的?
- 25. 混合decrator模式和工厂模式
- 26. 为什么硒代码只能在调试模式下成功执行,但在运行模式下失败?
- 27. 多种混合模式的应用顺序是什么?
- 28. pygame中的混合模式是什么意思?
- 29. 服务器模式下的线程块
- 30. 仅在纱线集群模式下的服务器上运行的Spark任务
您可能还需要阅读此:http://stackoverflow.com/questions/198577/real-differences-between-java-server-and-java-client – biziclop 2011-02-03 20:21:14