Intel CPU内存屏障

CPU内存屏障用于保障有序性。

volatile禁止指令重排序,可以保证有序。

CPU内存屏障,Intel设计得比较简单,总共只有3条指令:

①sfence:也就是save fence,写屏障指令。在sfence指令前的写操作必须在sfence指令后的写操作前完成。

②lfence:也就是load fence,读屏障指令。在lfence指令前的读操作必须在lfence指令后的读操作前完成。

③mfence:在mfence指令前得读写操作必须在mfence指令后的读写操作前完成。

Power PC,mac,Intel对于内存屏障的设计均不一样,Intel比较简单。

发布了755 篇原创文章 · 获赞 343 · 访问量 77万+

猜你喜欢

转载自blog.csdn.net/a772304419/article/details/103940426