Wie unterscheiden sich memory_order_seq_cst und memory_order_acq_rel?
Speicher sind Freigabeoperationen und Lasten sind Erfassungsoperationen für beide. ich weiß dasmemory_order_seq_cst
soll eine zusätzliche Gesamtreihenfolge für alle Vorgänge auferlegen, aber ich kann kein Beispiel erstellen, in dem dies nicht der Fall ist, wenn allememory_order_seq_cst
werden ersetzt durchmemory_order_acq_rel
.
Vermisse ich etwas, oder ist der Unterschied nur ein Dokumentationseffekt, d. H. Man sollte verwendenmemory_order_seq_cst
wenn man nicht mit einem entspannteren Modell spielen und benutzen willmemory_order_acq_rel
wenn Sie das entspannte Modell einschränken?