bind s toggle cl_show_hook_coll_own 2 1
//Thread 1
x.store(1, seq_cst);
y.store(1, release);
//Thread 2
r1 = y.fetch_add(1, seq_cst);
r2 = y.load(relaxed);
//Thread 3
y.store(3, seq_cst);
r3 = x.load(seq_cst);
happens-before
B does not imply A is before B in the single total order of seq_cst
operations (edited)happens-before
and precedes in a single total order
within memory_order_seq_cst
happening-before
the fetch_add
technically has no effect on the single total order happens before
.synchronize-with
thread 1, and you can thus establish a inter-thread happens-before
relationship between two seq_cst
stores without enforcing any order in the single total order (edited)bind s toggle cl_show_hook_coll_own 2 1
; exit
in the end; exit
in the end bind s toggle cl_show_hook_coll_own 2 1
cl_chat_teamcolors 0