1
@ThreadSafe
public class SynchronizedInteger {
@GuardedBy("this") private int value;
public synchronized int get() { return value; }
public synchronized void set(int value) { this.value = value; }
}
書中說:評論
去想volatile變量的一個好辦法是想象,他們的行爲大致是這樣的SynchronizedInteger類 清單3.3,替換讀取和通過調用get和set來寫入volatile變量。
...
這個比喻並不準確; SynchronizedInteger的內存可見性效果實際上比volatile變量稍強。見 第16章。
我查了第16章,但沒有找到確切的答案 - 內存可見性保證如何更強?
建議您改述此事。讓它成爲一個獨立的問題。稍後在實踐中添加對實踐的參考,以顯示您對答案感興趣的原因。 –