标签: assembly x86 atomic
我找到了lock inc addr,但是没有保留存储值的副本,甚至在同一个线程中的读取之后立即读取也会在竞争写入之后出现。
lock inc addr
我找到的最佳解决方案是load / inc / cas循环。
load
inc
cas
答案 0 :(得分:11)
lock xadd是你的朋友。
lock xadd
答案 1 :(得分:3)
请参阅atomic_impl.h了解更多x86 / x86_64原子基元和用法。