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

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

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

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

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

什么是JIT?

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

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

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

相关推荐
JouYY4 分钟前
聊一下复杂 Agent 架构的性能优化设计
性能优化·llm·agent
ujainu小2 小时前
原生性能优化:6变量实现高效桥接
开发语言·华为·性能优化·harmonyos
不会就选b4 小时前
Linux之进程(七)--虚拟地址空间
jvm
谙忆10245 小时前
图片是 Web 性能监控的重灾区:LCP 和 CLS 到底怎么测、怎么定位到具体那张图
性能优化
谙忆102415 小时前
图片预加载与 fetchpriority 实战:吃透浏览器资源优先级抢到 LCP 图
性能优化
TPBoreas17 小时前
MySQL性能优化面试全攻略
mysql·面试·性能优化
一孤程1 天前
PerfDog性能测试实战——从入门到性能优化全覆盖
性能优化·性能测试·测试·perfdog
思麟呀1 天前
在C++基础上理解CSharp-7
java·jvm·c++·c#
头茬韭菜1 天前
3.9 成本预警 — 退出钩子、$5 阈值对话框与多通道成本通知
java·大数据·jvm·ai
并不喜欢吃鱼1 天前
从零开始 C++----- 十五.一文吃透 C++ 异常:try-catch、栈展开、自定义异常、异常安全 noexcept 底层全剖析
java·开发语言·jvm