![]() |
1
3
不,您的代码是线程不安全的。可使其安全的变体如下:
你只能升一次旗,不能发布多个
现在,关于
为什么?
…您不能保证
在这段代码中,一旦数组被发布,您就永远不会接触它,因此无论您从中取消引用什么
|
![]() |
2
1
一般来说,它不起作用的原因有很多:
更好的方法是将数组本身声明为volatile 和 将其值视为不可变:
|
![]() |
3
0
除非您声明变量
|
![]() |
Bogey · C#共享内存-CPU缓存风险(非易失性读取)? 7 年前 |
![]() |
filo · 如何在x86上使用gcc强制执行内存排序 7 年前 |
![]() |
maxim1 · Java中的易失阵列、内存障碍和可见性 8 年前 |
![]() |
paddy · 双原子自旋锁的最小限制存储器排序 9 年前 |