に同期好む私は、次の書面の最後にこのanswerを読んだ:は、揮発性
あなたは揮発性ではない、その逆 シンクロナイズドで行うことができるができる何かを。
明らかではありません。次のようにJLS 8.3.1.4は、揮発性のフィールドを定義:
フィールドは、Javaメモリモデル は、すべてのスレッドが可変 (§17.4)に一貫した値を見ることが保証される場合には、揮発性宣言することができます。
したがって、揮発性フィールドはメモリの可視性に関するものです。また、私が引用した答えからわかる限り、揮発性のフィールドへの読み書きは同期されています。
同期によって、1つのスレッドだけが同期ブロックにアクセスできることが保証されます。私が得たように、それはメモリの可視性とは関係ありません。私は何を取りこぼしたか?
'synchronized'ブロックに入ると終了するとメモリバリアが実行され、変更がスレッド間で見えるようになります。 – Sneftel