Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
一些讨论线程提到了 Java 代码的乱序执行,但是他们没有明确声称 JVM 乱序执行字节码。所以我想知道这是不是真的;如果是,是否有关于该主题的(官方)技术文档?
谢谢。
编辑:我知道CPU乱序执行指令,但我想知道JVM本身是否乱序执行字节码。
JVMS解释了这个主题。一般来说,JVM 可以自由地对字节码进行某种重新排序,这可能会在多线程应用程序中产生意想不到的行为。
对于单线程应用程序和每个单线程,重新排序不会影响行为,程序/线程执行与您在源代码中所期望的相同。