Существуют очень точные спецификации того, как JVM должна вести себя для volatile
, и если она решит сделать это с помощью инструкций, специфичных для процессора, то это хорошо для вас.
Единственное место, где вы должны сказать «мыЗнайте, что на этой платформе процессор ведет себя как .. "это при соединении в нативном коде, где он должен соответствовать процессору.Во всех остальных случаях пишите в спецификации.
Обратите внимание, что ключевое слово volatile очень важно для написания надежного кода, выполняющегося на нескольких процессорах, каждый из которых имеет свой собственный кеш, поскольку он сообщает JVM игнорировать локальный кеш и получать официальное значение вместо кешированного значения за 5 минут.тому назад.Как правило, вы этого хотите.