我正在阅读Anthony Williams 的C++ Concurrency in Action。在“了解轻松排序”部分,它具有:
您还可以告诉隔间里的人一些额外的事情,例如“写下这个数字,并告诉我列表底部是什么”(交换)和“如果底部的数字,写下这个数字清单是这样的;否则告诉我我应该猜到什么”(compare_exchange_strong),但这并不影响一般原则。
这是否意味着此类操作总是按修改顺序读取最后一个值(如果在约束之前没有发生额外的线程间)?即是否有一些缓存更新/等(即使在宽松的排序中)?