即时编译(Just-In-Time Compilation)
缩写:JIT
简述
在程序运行过程中把热点字节码或中间码编译为本地机器码的技术。结合解释/基线编译的启动优势与本地码的峰值性能;带来预热与去优化等复杂行为。
使用场景
托管运行时热路径、动态语言加速。
组成与要点
flowchart LR
解释或基线执行 --> 识别热点 --> JIT编译为本地码 --> 优化执行
flowchart LR 解释或基线执行 --> 识别热点 --> JIT编译为本地码 --> 优化执行
实践与应用
• 基准测试注意预热
• 避免去优化陷阱(类型不稳定)
• 观测编译日志定位性能悬崖
注意事项
• 冷启动差
• 微基准误导
关联术语
• 编译器:静态编译的对照
• 解释器:常与 JIT 混合的基线执行
• 字节码:JIT 的常见输入
• 运行时:承载分析与编译的宿主