为什么java代码编译时---会出现重排序现象呢?
java代码重排序现象
重排序: 指代码的运行顺序发生变化 重排序主要是JVM为了提高程序运行效率,将不影响程序结果的操作进行重排序
何种情况下会发生重排序
1.在单线程环境下不会改变程序运行的结果,这些代码可能会发生重排序 2.存在数据依赖关系的代码不会发生重排序 综上两点,我们可以看出只有单线程下不影响其结果时的代码会发生重排序 注意事项: 重排序不会影响单线程环境的执行结果 但会破坏多线程的运行效果
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。