【Java】什么是JIT编译器

一、JIT

即时(Just-In-Time,JIT)编译器是 Java 虚拟机的核心。对 JVM 性能影响最大的莫过于编译器,其会有选择的对Java的字节码进行编译执行或解释执行。

1.1 热点编译

在实际情况下,程序只有一部分代码被经常执行,而程序的性能就取决于这些代码执行的速度。这些关键代码段被称为应用的热点,代码执行得越多就被认为是越热。
JVM在面对热点代码时就会对其进行编译,但是如果不是热点代码那编译完全就是浪费时间。对于只执行一次的代码,解释执行 Java 字节码比先编译然后执行的速度快
在这里插入图片描述

1.2 编译阈值

编译是基于两种 JVM 计数器的:

  • 方法调用计数器
  • 方法中的循环回边计数器
    JVM 执行某个 Java 方法时,会检查该方法的两种计数器总数是否达到编译阈值,然后判定该方法是否适合编译。如果适合,该方法就进入编译队列。这种编译没有正式的名称,通常叫标准编译。

二、JIT编译器调优

所谓编译器调优,其实就只是为目标机器上的 Java 选择正确的 JVM 和编译器开关。

编译器版本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值