原文:
摘抄
Memory Barrier就是用来防止乱序执行的。具体说来,Memory Barrier包括三种:
-
acquire barrier
。acquire barrier之后的指令不能也不会被拉到该acquire barrier之前执行。 -
release barrier
。release barrier之前的指令不能也不会被拉到该release barrier之后执行。 -
full barrier
。以上两种的合集。
__sync_synchronize()
就是一种full barrier
网友评论