JVM性能优化之--JIT即时编译

如果我们想将源Java文件运行,需要进行如下步骤:

  1. 使用类加载器将Java文件实时编译成class文件,也就是字节码指令
  2. 使用JVM将编译后的字节码指令,解释为机器码,这是计算机可以直接执行的指令
  3. 计算机直接执行

但是这其中由于class文件到机器码之间不断的转换会消耗相对大量的时间,导致Java的执行,效率不如c等其他语言

于是JVM加入了一款新的技术,JIT---(Just In Time)

什么是JIT?

即时编译,意思就是在运行时JVM如果发现一段代码的字节码被短时间内反复不断的多次执行了,也就是热点代码,

JVM会自动在内存中缓存这段热点代码的机器码指令,若短时间内再出现热点代码被调用的场景则JVM会直接从内存中取出

热点代码的机器码指令执行,这便是JIT,因为JIT,JVM的运行效率将大大提升。

相关推荐
爱的叹息7 分钟前
Java虚拟机(JVM)家族发展史及版本对比
java·开发语言·jvm
东风西巷1 小时前
Control Center安卓版:自定义控制中心,提升手机操作体验
android·智能手机·性能优化·软件需求
左灯右行的爱情9 小时前
深度学习与总结JVM专辑(七):垃圾回收器—CMS(图文+代码)
jvm
碎梦归途11 小时前
23种设计模式-结构型模式之享元模式(Java版本)
java·开发语言·jvm·设计模式·享元模式
左灯右行的爱情12 小时前
JVM-卡表
java·jvm·算法
程序猿chen12 小时前
JVM考古现场(二十五):逆熵者·时间晶体的永恒之战(进阶篇)
java·jvm·git·后端·程序人生·java-ee·改行学it
web安全工具库13 小时前
Python内存管理之隔代回收机制详解
java·jvm·算法
bing_15814 小时前
如何使用命令行工具监控 JVM 的运行状态?
jvm·监控jvm运行状态
万水千山走遍TML15 小时前
JavaScript性能优化
开发语言·前端·javascript·性能优化·js·js性能
Elastic 中国社区官方博客15 小时前
Elasticsearch 堆内存使用情况和 JVM 垃圾回收
大数据·jvm·数据库·elasticsearch·搜索引擎·全文检索