【每日阅读】2020年6月28日-一个小的技术细节

真诚的希望您能留言与我交流,这会对我有非常大的帮助!

链接

https://mp.weixin.qq.com/s/nrlvUDpUoVyLBg318EMkJQ

文章截图

简评

核心知识点:对volatile变量的操作会有准内存、本地内存同步的“性能损耗”,所以搞了个临时变量来访问volatile变量。之所以我打了引号,是因为我觉得这么点损耗,对于99.999%的业务场景来说,都不应该说是损耗…肯定是微乎其微的。这个知识点记着就好,面试或许有用。

这里额外说一下,单例的变量用volatile修饰,是为了防止指令重排序,因为new不是原子操作,如果new的某些步骤指令重排了,其他线程可能判断instance已经不是null了,但是却还是未被正确初始化后的对象。

原创文章,作者:geekgao,如若转载,请注明出处:https://www.geekgao.cn/archives/1986

发表评论

登录后才能评论
GitHub
分享本页
返回顶部