Я новичок, когда дело доходит до этого. Может ли кто-нибудь дать упрощенное объяснение различий между следующими барьерами памяти?
-  Окна MemoryBarrier();
-  Забор _mm_mfence();
-  Встроенная сборка asm volatile ("" : : : "memory");
-  Внутренний _ReadWriteBarrier();
Если нет простого объяснения, некоторые ссылки на хорошие статьи или книги, вероятно, помогут мне получить это прямо. До сих пор я был в порядке, просто используя объекты, написанные другими, обертывая эти вызовы, но я хотел бы иметь лучшее понимание, чем мое текущее мышление, которое в основном соответствует тому, что существует более чем один способ реализации барьеров памяти под обложками.
