我发现了lock inc addr
,但这并没有保留存储值的副本,甚至在同一线程中紧随其后的读取也可能发生在竞争写入之后。
我发现的最佳解决方案是 load
/inc
/cas
循环。
最佳答案
lock xadd
是你的 friend 。
关于assembly - x86 是否具有原子增量来保留存储的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/668830/
我发现了lock inc addr
,但这并没有保留存储值的副本,甚至在同一线程中紧随其后的读取也可能发生在竞争写入之后。
我发现的最佳解决方案是 load
/inc
/cas
循环。
最佳答案
lock xadd
是你的 friend 。
关于assembly - x86 是否具有原子增量来保留存储的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/668830/