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

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

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

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

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

什么是JIT?

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

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

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

相关推荐
Sincerelyplz1 小时前
【JDK新特性】分代ZGC到底做了哪些优化?
java·jvm·后端
前端小咸鱼一条8 小时前
16.React性能优化SCU
前端·react.js·性能优化
TDengine (老段)8 小时前
益和热力性能优化实践:从 SQL Server 到 TDengine 时序数据库,写入快 20 秒、查询提速 5 倍
大数据·数据库·物联网·性能优化·时序数据库·tdengine·1024程序员节
敲代码的猴先生1 天前
技术分享 | torch.profiler:利用探针收集模型执行信息的性能分析工具
人工智能·pytorch·经验分享·语言模型·性能优化
武子康1 天前
Java-163 MongoDB 生产安全加固实战:10 分钟完成认证、最小权限、角色详解
java·数据库·分布式·mongodb·性能优化·系统架构·nosql
初学小白...1 天前
线程同步机制及三大不安全案例
java·开发语言·jvm
小白学大数据1 天前
从携程爬取的杭州酒店数据中提取价格、评分与评论的关键信息
爬虫·python·性能优化
凤山老林1 天前
还在用JDK8?JDK8升级JDK11:一次价值千万的升级指南
java·开发语言·jvm·spring boot·后端·jdk
2501_938790071 天前
详解 JVM 中的对象创建过程:类加载检查、内存分配、初始化的完整流程
jvm
宸津-代码粉碎机1 天前
Java内部类内存泄露深度解析:原理、场景与根治方案(附GC引用链分析)
java·开发语言·jvm·人工智能·python