Я читал о заказах памяти в C ++. Я мог понять расслабленные и приобрести модели, которые хорошо. Но я борюсь с последовательной согласованностью. < /P>
Если я не ошибаюсь, с CppReerference, std :: memory_order_seq_cst < /code> 'операция' эквивалентна: < /p>
[*] операция по считыванию плюс. Операция-это «хранить».
Операция ACQ-Rel плюс один общий порядок, когда операция является «modify-write». Эквивалентно ли это? Два? Точно так же, если это случай 2 (выпуск забора), компиляторы будут свободны перемещать любую операцию чтения из -за забора на над ним. Наконец, если это случай 3 (забор ACQ-Rel), компиляторы будут запрещены для перемещения любых инструкций через забор. Это правильно? Вышеуказанные заявления могут быть неверными. Пожалуйста, поправьте меня там, где я ошибаюсь.
Подробнее здесь: https://stackoverflow.com/questions/755 ... fence-in-c