当线程T在任何时间点读取对象时,它看到的值可能是:
还有内存障碍(加载-加载,加载-存储,存储-加载和存储-存储< / strong>),可以定义为:
<< strong>加载 s | 存储 s> 之前不能重新排序障碍 过去 障碍 和加载 s | 存储 s> 后,障碍无法重新排序 优先 到 障碍。
现在,假设线程T1正在执行这段代码:
load(X)
store(Y, 1)
----------- <-- a barrier
load(Y)
store(X, 1)
另一个线程T2正在执行这段代码:
load(Y)
------- <--- a barrier
load(X)
当壁垒为以下条件时,T1和T2中的壁垒(假定它们相同)会对线程T2中X和Y的可见性产生什么影响
谢谢!