为什么代码会重排序?

在执行程序时为了提供性能处理器和编译器常常会对指令进行重排序但是 

不能随意重排序不是你想怎么排序就怎么排序它需要满足以下两个条件

在单线程环境下不能改变程序运行的结果

存在数据依赖关系的不允许重排序 

需要注意的是重排序不会影响单线程环境的执行结果但是会破坏多线程的执 

行语义

posted @ 2020-04-25 14:19  咔啡  阅读(614)  评论(0编辑  收藏  举报