Здравствуйте, я читал книгу Joy of clojure, и в разделе о STM у них есть изображение двух транзакций, где A изначально получает то же значение из ссылки, что и B, а затем обе транзакции A и B выполняют свои вычисления, но завершает A сначала и делает фиксацию переменной, поэтому B должен повторить попытку.
Но я думаю о том, если бы B повторил попытку с фиксацией A. А если это так, то что, если все наоборот? Тогда конечное значение будет существенно отличаться.
Это кажется простой опасностью, которую упустили из виду, и я полагаю, что не понимаю этого полностью. Пожалуйста, помогите мне распутать это.