JMM中的重排序和内存屏障

概述 在执行程序时,为了提高性能,编译器和处理器常常会对指令做重排序,为了实现某些功能有时会禁止某些重排序,由此引入了内存屏障。 重排序 as-if-serial语义 不管怎么重排序,程序的执行结果不能被改变,编译器、runtime和处理器都必须遵守as-if-serial语义。编译器和处理器不会对存在数据依赖关系的操作做重排序,因为这种重排序会改变执行结果,但是,如果操作之间不存在数据依赖关系,
相关文章
相关标签/搜索