__sync_synchronize有什么作用?

Sup*_*ock 21 c c++ linux

我看到了一个关于使用__sync_synchronize()的时序问题答案.

  • 这个功能有什么作用?
  • 什么时候需要使用?

nik*_*nik 30

它是一个完全内存屏障的原子内置.

操作中不会向前或向后移动内存操作数.此外,将根据需要发出指令,以防止处理器在操作之后推测操作和排队存储之间的负载.

检查上面链接的详细信息.


Nik*_*sov 6

我猜它会强制使用内存栅栏