关于需要加volatile的疑问

来源:13-12 JMM的应用

想好名字再改

2020-01-09

老师,按照我的理解
由于happens before的原因,第二个线程进入同步代码块的时候,第一个线程初始化对象的操作已经完成了。即使初始化操作的三个步骤发生了重排序,第二个线程应该也能够看到第一个线程初始化操作的三个步骤的结果。所以我感觉应该不会发生空指针的问题
我的理解是哪里出错了吗~

写回答

1回答

悟空

2020-01-09

好问题,小伙伴请参考这个:http://coding.imooc.com/learn/questiondetail/142039.html

1
1
想好名字再改
看完了链接,理解了老师的意思。非常感谢!!
2020-01-09
共1条回复

线程八大核心+Java并发原理及企业级并发解决方案

完整的并发知识网络+丰富的工作内容分享+50余道并发高频面试题

2512 学习 · 939 问题

查看课程