双重校验锁的volatile的作用:
回答:防止指令重排
然后被问既然加了synchronize了,其中的代码保证了原子性,那么为什么其他线程能看到中间状态,得到一个没有赋值成功的对象呢?如何解释?
相关推荐