Я читал о создании барьеров памяти в качестве полных ограждений для предотвращения выполнения не по порядку.
Здесь есть хороший ресурс об этой топике c:
http://www.albahari.com/threading/part4.aspx
Сейчас я пытаюсь понять, насколько часто это вызывает озабоченность при разработке программы, использующей параллельные потоки. Утверждается, что JIT-компилятор может переупорядочивать инструкции, а также процессор. Но не все процессоры могут сделать это, поэтому в таком случае, как часто это делают компиляторы JIT? Делает ли он это только на основе процессора?
Я также читал, что уязвимость спектра в 2018 году была связана с неупорядоченным выполнением, из-за чего кажется, что процессоры очень часто поддерживают .