关于加volatile关键字

来源:12-15 解决问题

慕勒9548534

2019-08-28

是否可以这样理解:之所以只给b加volatile是因为b = a这行代码中涉及到了a。并且a的所有操作在这行代码之前已经完成,所涉及的a是最终确定的值,如果将a=3放到b=a后面的话,这是只给b加volatile就不对了,需要给a,b都加上vola,老师看一下我这么理解对么

写回答

1回答

悟空

2019-08-28

小伙伴,

之所以只给b加volatile是因为b = a这行代码中涉及到了a。

这个是不一定的,就算b不涉及a,也可以只给b加volatile,因为只要修改了b,那么之前的代码(对a的修改)就可见。

如果将a=3放到b=a后面的话,这是只给b加volatile就不对了

这个理解是对的。


你可以看下13-4小节,讲的就是volatile的触发器用法。

0
6
悟空
回复
慕勒9548534
慕课网要求关注对方之后,可以发私信
2019-08-28
共6条回复

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

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

2512 学习 · 939 问题

查看课程