Alexey
но надо уточнить (лично мне, так как моя консерватория про барьеры памяти имеет пробелы)
Прозвучит странно в этом чате конечно, но я порекомендую почитать JMM JSR-133 (Java) там довольно сложный и сухой формализм того что за чем куда идет и как но намного большое материала по JММ чем про те же С++11 MM. Половина людей определяющий стандарт JMM принимали участие в С++11 ММ, так что разобраться потом в СММ будет проще, однако местами С++11 стандарт имеет более простые объяснения про fence нежели JMM тот же случай с IRIW на офф CPP WEB описывается более простым языком почему там нужен seq-cst. Что касается общего материала без ММ про барьеры и многопоточность могу от себя порекомендовать следующее: art of multiprocessor programming (книга про аллгоритмы но все ровно в контексте JVM инфраструктыры свободно переносится на плюсы), C++ Concurrency in Action: Practical, Mathematizing, C++ Concurrency: The post-Rapperswill Model (hardcor), Memory Barriers: a Hardware View for Software Hackers (чисто объяснения барьеров на процах, их различия описание Coherence-Cache)