首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Profiler如何在执行引擎的JIT编译器中工作?

Profiler如何在执行引擎的JIT编译器中工作?
EN

Stack Overflow用户
提问于 2016-09-24 19:20:35
回答 1查看 630关注 0票数 2

每次我们使用"java className“命令运行Java应用程序时,都会创建一个新的jvm实例。执行引擎中的分析器识别热点,这意味着重复执行方法,并放置热点的本机代码。现在这样做,整个java应用程序将至少被解释一次,到那时热点被识别出来,所以下次如果我们运行java应用程序,那么这些热点的本机代码将被直接获取,并且不会被再次解释。现在我的问题是,如果我们再次运行java应用程序,那么将创建新的jvm实例,并且在以前的jvm中识别出热点。它怎麽工作?两者都是不同的jvm。

EN

回答 1

Stack Overflow用户

发布于 2016-09-24 20:38:59

如果我没理解错的话,主要问题是: JVM重新启动后,与相关的信息(热点和已编译代码)是否会被保留?

答案通常是否定的。JVM将所有这些信息保存在元空间中,所有这些信息都是在运行时创建的,然后在停止时消失。它不会持久保存在任何地方,当新的JVM再次启动时,JIT优化将被重做。

为什么是“一般的”:

在过去的几年里,有关于实际保存这些信息的讨论。OpenJDK社区正在考虑实现它,有一个付费解决方案实际上实现了这个功能作为它的主要卖点:

Zing

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39675747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档