gpt4 book ai didi

java - 解释字节码与编译字节码?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:31:57 25 4
gpt4 key购买 nike

我遇到过一些关于 JVM/JIT Activity 的引用资料,其中编译字节码和解释字节码之间似乎存在区别。特定注释指出字节码在前 10000 次运行时被解释,然后进行编译。

“编译”和“解释”字节码有什么区别?

最佳答案

解释字节码基本上就是逐行读取字节码,不做优化什么的,实时解析执行。由于多种原因,这非常低效,包括 Java 字节码不是为快速解释而设计的问题。

当一个方法被编译时,JIT 加载整个方法并生成本地代码直接在 CPU 上运行,而不是逐行读取和解释字节代码。该方法编译一次后,每次调用该方法时直接使用生成的本地代码。这在天文数字上更快,但在编译方法时会产生一些开销;除其他事项外,JVM 仅负责编译频繁调用的方法,以最大限度地减少开销,同时最大限度地提高被极其频繁调用的“紧密内循环”代码的性能。

关于java - 解释字节码与编译字节码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10263782/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com