题
我已经发现 lock inc addr
但这并没有保留存储值的副本,甚至同一线程中紧随其后的读取也可能发生在竞争写入之后。
我发现的最好的解决方案是 load
/inc
/cas
环形。
解决方案
lock xadd
是你的朋友。
其他提示
看 原子实现.h 了解更多 x86/x86_64 原子原语和用法。
不隶属于 StackOverflow
题
我已经发现 lock inc addr
但这并没有保留存储值的副本,甚至同一线程中紧随其后的读取也可能发生在竞争写入之后。
我发现的最好的解决方案是 load
/inc
/cas
环形。
解决方案
lock xadd
是你的朋友。
其他提示
看 原子实现.h 了解更多 x86/x86_64 原子原语和用法。