>>575
それはちょっと違うぞ
AtomicIntを使うと、ソースコードが非常にシンプルになるのが一番の利点
private final AtomicInteger aInt = new AtomicInteger(0);
としてしまえば、それだけでvolatileもsynchronizedも不要になり、同期化に関する色々な問題はAtomicIntegerにカプセル化される
そうすれば、後から怪しいメソッドを追加してしまい、同期化ポリシーが崩れることもない