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章,但没有找到确切的答案 - 内存可见性保证如何更强?
建议您改述此事。让它成为一个独立的问题。稍后在实践中添加对实践的参考,以显示您对答案感兴趣的原因。 –