0
点赞
收藏
分享

微信扫一扫

JVM笔记-16运行时数据区-堆(逃逸分析:代码优化、总结)

guanguans 2022-04-04 阅读 46
java后端

学习JVM的一点简单笔记,宋红康老师jvm讲的很好,感谢。

尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机)


逃逸分析:代码优化

避免垃圾回收,提高程序性能。
避免在这里插入图片描述

栈上分配

在这里插入图片描述
在这里插入图片描述

-/+DoEscapeAnalysis 默认开启

关闭逃逸分析
在这里插入图片描述
开启逃逸分析
在这里插入图片描述
运行时间减少,根本不会维护那么多对象。
在这里插入图片描述
在这里插入图片描述
甚至没有发生gc。


同步省略

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
字节码中还是有,运行时才考虑省略。

分离对象/标量替换

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

逃逸分析是在server端开启的
主要还是标量替换,作为优化的手段,逃逸分析完,直接进行栈上分配并没有被采用。逃逸分析,分析后主要还是依赖标量替换。

对象标量替换后,已经不被成为对象,所以才说所有对象实例,在堆上。


在这里插入图片描述

举报

相关推荐

0 条评论