深入理解JVM后端优化技术-逃逸分析(Escape Analysis)

相关系统

深入理解jvm执行引擎-CSDN博客

深入理解JVM后端优化技术-方法内联-CSDN博客

定义

当一个对象在方法里面被定义后,它可能让外部方法所引用,作为调用参数传递到其它的方法中,这种称为方法逃逸;还有可能被外部线程访问到,赋值给可以在其它线程中访问的实例数量,这种称为线程逃逸;从不逃逸、方法逃逸到线程逃逸,称为对象由低到高的不同逃逸程度。

左侧的代码,d对象不会让外部引用,只会用在方法中使用,所以不会发生逃逸。而右侧的代码中,d对象一看就有其它方法使用了,就会产生逃逸。JDK8中默认开启了逃逸分析,可以添加参数-XX:-DoEscapeAnalysis主动关闭逃逸分析。 

优化措施

        如果能分析出一个对象会不会逃逸到方法或线程之外,那么JIT就可能为这个对象实例采取后一系列的优化措施。

标量替换

<

相关推荐

  1. 深入理解JVM优化技术-锁消除(Lock Elision)

    2024-04-09 18:22:04       13 阅读
  2. JVM逃逸分析详解

    2024-04-09 18:22:04       32 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-09 18:22:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-09 18:22:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-09 18:22:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-09 18:22:04       20 阅读

热门阅读

  1. 自己总结的ICT云计算题库三

    2024-04-09 18:22:04       14 阅读
  2. 【Leetcode】【2024048】1544. Make The String Great

    2024-04-09 18:22:04       13 阅读
  3. react api:createContext

    2024-04-09 18:22:04       15 阅读
  4. go 获取terraform output输出

    2024-04-09 18:22:04       14 阅读
  5. 5.2 SSH和交换机端口安全概述

    2024-04-09 18:22:04       12 阅读