3

一些讨论线程提到了 Java 代码的乱序执行,但是他们没有明确声称 JVM 乱序执行字节码。所以我想知道这是不是真的;如果是,是否有关于该主题的(官方)技术文档?

谢谢。

编辑:我知道CPU乱序执行指令,但我想知道JVM本身是否乱序执行字节码。

4

1 回答 1

5

JVMS解释了这个主题。一般来说,JVM 可以自由地对字节码进行某种重新排序,这可能会在多线程应用程序中产生意想不到的行为。

对于单线程应用程序和每个单线程,重新排序不会影响行为,程序/线程执行与您在源代码中所期望的相同。

于 2013-02-06T01:12:15.397 回答