`
freish
  • 浏览: 83946 次
  • 性别: Icon_minigender_1
  • 来自: 摄影帝国
社区版块
存档分类
最新评论

开发、测试java程序时,尽可能使用-server(win上)选项,其他平台使用类似选项,启用JIT优化

    博客分类:
  • java
 
阅读更多

如下粗心的代码

 

 

public class Visibility {
	private  static boolean stop;
	
	public static void main(String[] args) throws Exception {
		new Thread(new Runnable(){
			public void run() {
				int i = 0;
				while(!stop) {
					i++;
				}
				System.out.println("finish loop,i=" + i);
			}
		}).start();
		
		
		Thread.sleep(1000);
		stop = true;
		Thread.sleep(2000);
		System.out.println("finish main");
	}
}

 

 

 

在-client模式下会很快结束,测试不出问题

 

但通过java -server Visibility来运行(win上),就会死循环

 

 

 

所以,为避免程序(尤其是多线程的)运行在与开发环境不同的jvm上因内存可见性、指令重排序等带来的诸如活性问题,开发、测试时应尽可能始终启用JIT优化,尽早发现问题。

1
0
分享到:
评论

相关推荐

    ibm-java-ppc64-sdk-7.0-10.50

    IBM Java PPC64 SDK 7.0-10.50是IBM专门为PowerPC64架构的AIX...综上所述,IBM Java PPC64 SDK 7.0-10.50是AIX平台上开发和运行Java应用的重要工具,它的安装和使用对于在AIX环境中构建和部署Java应用程序至关重要。

    java和JIT编译器版本.pdf

    JIT编译器是Java虚拟机(JVM)的一部分,它能够在程序运行时将字节码转换为机器码,从而提高执行效率。了解JIT编译器的不同版本对于优化Java应用程序的性能至关重要。 在Java中,JIT编译器有两个主要类型:Client和...

    Java程序性能优化 让你的Java程序更快、更稳定

    Java程序性能优化是每个开发人员都需要关注的重要领域,它涵盖了多个方面,旨在提高代码执行效率,减少资源消耗,以及提升应用程序的稳定性和响应速度。在本文中,我们将深入探讨Java性能优化的关键点,帮助你的Java...

    hsdis-1.1.1-win32-i386

    "hsdis-1.1.1-win32-i386" 是一个针对Windows 32位系统的特定版本的HotSpot服务端分解器(HotSpot Server Disassembler),主要用于Java虚拟机(JVM)的性能分析和调试。hsdis是JDK的一个插件,它能够帮助开发者理解...

    windowsdesktop-runtime-5.0.3-win-x86.zip

    这是一个重要的软件组件,它允许用户在他们的计算机上执行基于.NET 5.0框架开发的应用程序。 .NET是微软推出的一种开源开发平台,它提供了丰富的库和工具,用于构建跨平台的桌面、Web、移动、云和游戏应用。.NET ...

    java程序性能优化-pdf+源码

    《Java程序性能优化》这本书是Java开发者不可或缺的参考资料,它深入浅出地讲解了如何提升Java应用程序的效率和稳定性。本书结合理论与实践,既包含了基础的性能优化原则,也探讨了高级的优化技巧,适合从初级到中级...

    A Trace-based Java JIT Compiler Retrofitted from a Method-based Compiler

    ### 基于追踪的Java即时编译器:从基于方法的编译器改造而来 #### 概述 本文档介绍了一种基于追踪的Java即时编译器(简称trace-JIT),该编译器是从一个高质量的基于方法的即时编译器(简称method-JIT)改造而来的...

    JAVA性能优化.docJAVA性能优化.doc

    - **参数调整**:HotSpot VM的性能可以通过设置启动参数来优化,例如使用`-server`选项选择Server VM。内存参数配置也至关重要,包括堆大小(`-Xms`和`-Xmx`)、新生代大小(`-NewSize`和`-MaxNewSize`)、年老代...

    深入探索Java JIT编译器:原理、优化与实践

    本文将详细介绍Java JIT编译器的工作原理、优化策略以及如何在实际开发中利用JIT提高程序性能。 Java JIT编译器是提高Java程序性能的关键技术之一。通过理解其工作原理和优化策略,开发者可以更好地利用JIT编译器来...

    java win-7 虚拟机

    总的来说,"java win-7 虚拟机"是一个关键的软件组件,它使得基于Java的应用程序能够在Windows 7操作系统上运行,无论这些应用程序是在本地开发还是在其他平台上。了解如何正确安装、配置和管理Java虚拟机对于开发者...

    大话JAVA性能优化

    由于提供的信息不包含实际的书籍内容,因此无法生成有关书籍内容的知识点。但根据标题《大话JAVA性能...因此,开发者在应用这些知识点时,应结合最新的Java开发文档和社区讨论来制定适合当前技术环境的性能优化方案。

    Java程序优化与数据竞争检测的研究.pdf

    Java语言在使用形式上一直具有较高的使用率,但随着Java应用范围的不断扩大,提升该程序的性能方式成为主要的研究领域,特别是对程序语言在错误发出形式上的实施。Java程序性能测试技术是检测Java程序性能的重要手段...

    java学习教材(java私塾跟我学系列--java篇)

    ### Java学习教材(Java私塾跟我学系列--Java篇)知识点总结 #### 一、Java的历史与发展 - **Java的起源**:Java起源于Sun公司的Green项目,最初目的是为家用消费电子产品开发分布式代码系统。该项目起初尝试使用...

    Trace-based JIT简介(对Method JIT的改进)

    在现代软件开发领域,即时编译器(Just-In-Time Compiler, JIT)技术对于提高程序运行时性能至关重要,尤其是在Java这样的动态类型语言中。传统的Method JIT将整个方法作为编译的基本单位进行优化与编译,但在复杂的...

    Java程序性能优化.rar

    在Java编程领域,程序性能优化是一项至关重要的任务,它直接影响到软件的运行效率、资源消耗以及用户体验。"Java程序性能优化"这个主题涵盖了多种技术与策略,旨在提升Java应用程序的运行速度,减少内存占用,以及...

    JIT-Java高级程序设计标准答案A.doc

    在Java高级程序设计中,还需要掌握其他重要概念,如泛型、注解、反射、IO流、NIO(非阻塞I/O)、并发控制(synchronized、volatile、Lock接口等)、集合框架的高级用法、设计模式、JVM优化等。这些知识点在实际开发...

    电子科技大学java程序设计知识点+编程源代码

    电子科技大学的Java程序设计课程涵盖了Java语言的基础和核心概念,是针对期末复习的重要参考资料。以下是根据提供的题目解析总结的一些关键知识点: 1. **Java语言特点**: - 面向对象:Java是一种面向对象的语言...

    LLVM-10.0.0-win64.zip

    在Windows上安装LLVM-10.0.0-win64.exe后,用户可以利用LLVM开发自己的编译器、工具,或者使用其提供的工具链来编译和优化代码。例如,开发者可以使用Clang编译C++项目,然后通过Opt进行代码优化,最后使用llc生成...

    JIT-Java高级程序设计试卷A.doc

    Java是一种广泛使用的面向对象的编程语言,其特点包括平台无关性、丰富的类库以及强大的内存管理机制。在Java高级程序设计中,我们经常会遇到一些核心概念和技术,如迭代器、集合框架、多线程、GUI组件和网络编程。...

Global site tag (gtag.js) - Google Analytics