采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
既然用了synchronized ,那同步代码块中只会有一个线程在里面执行,那就不会有其他的线程去执行对象的地址分配及对象生成操作呀,那为什么还要再次判断null呢。
同学好,因为可能会有多个线程一起进入同步块外的 if,而synchronized只保证线程的串行执行,如果在同步块内不进行二次检验的话就会生成多个实例了,
登录后可查看更多问答,登录/注册
快速入门Spring核心源码+从零开发自研框架
1.6k 12
1.4k 9
1.6k 8
1.8k 8
16.9k 8
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号