1.volatile关键字 在C++中,对volatile修饰的对象的访问,有编译器优化上的副作用: 不允许被编译器优化,提供特殊地址的稳定访问(只从内存中读取). 有序性,编译器进行优化时,不能把对volatile对象前面的其他volatile语句放到他后面,反之也不行.也就是说volatile变量间的操作,是不会被编译器交换顺序的. 注意: 在多线程数据同步时,很多人会选择volatile来修饰全局的变量,使得线程同步.其实是不对的.由有序性可得,编译器可能对语句的位置进行交换,使得程序错误…