面试题 DCL下需不需要加 volatile关键字?

需要

原因:

  防止指令重排;

  其实在JAVA中进行new对象时,

 

有可能第一个线程进行创建的过程中,并且初始化完毕,第二个线程判断当前的指针不为空,则将对象返回,导致出错,所以需要加上volatile

 

posted @ 2021-01-11 00:25  大众思索  阅读(120)  评论(0编辑  收藏  举报