У меня есть два потока:
Тема: 1
a = 1;
x = b;
Тема: 2
b = 1
y = a
Здесь a и b объявлены изменчивыми. Я не понял, как создается "случается-до" ребро между a = 1; и y = a; и между x = b; и b = 1;
Я понимаю, что с помощью переменной volatile можно предотвратить чтение устаревших значений из кэша потоков. Но как можно избежать изменчивой переменной - перед заказом.
В частности, я не понял этого:
запись в нестабильное поле происходит перед каждым последующим чтением то же поле.
Hoe это работает?