私は、 TSAN が を理解していないことstd::atomic_thread_fence
を知りました。それを修正するには、フェンスの影響を受けるアトミック変数を TSAN に伝える必要があり__tsan_acquire(void *)
ます__tsan_release(void *)
。
しかし、seq-cst フェンスはどうでしょうか? 私が理解しているように、それらはacq-relフェンスよりも厳しいので、acq-relアノテーションは十分ではないでしょうか?
私はさまざまなメモリ順序にあまり慣れていないため、何かが欠けている可能性があります。