gpt4 book ai didi

java - 了解 Java PrintInlining 参数

转载 作者:行者123 更新时间:2023-12-04 16:20:20 25 4
gpt4 key购买 nike

我正在运行带有以下参数的 Java 程序:

-XX:+UnlockDiagnosticVMOptions -XX:+PrintInlining

我得到这个输出:

@ 83   java.util.LinkedList::getFirst (22 bytes)
@ 13 java/util/NoSuchElementException::<init> (not loaded) not inlineable

这究竟是什么意思?

是不是说getFirst的代码是内联的,异常没有内联?

或者这是否意味着 getFirst 和异常都没有内联?

这是以下代码:getFirst

http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7u40-b43/java/util/LinkedList.java#LinkedList.getFirst%28%29

同样的问题在这里:
@ 99   java.util.LinkedList::peek (18 bytes)

它是内联的吗?

http://planet.jboss.org/post/inline_all_the_things

在这个链接上,有一个后缀“内联(热)”。
在我的例子中,没有后缀。这是什么意思?

最佳答案

LinkedList::getFirst 的代码中,你会看到它构造了一个 NoSuchElementException .因此 VM 尝试内联调用。

但是,异常初始化程序似乎是不内联的规则 - 在我的 PrintInlining 日志中,Oracle JDK 8 显式注释这些行,如下所示:

@ 11   java.lang.NullPointerException::<init> (6 bytes)   don't inline Throwable constructors

关于java - 了解 Java PrintInlining 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33586026/

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