final内存屏障
来源:13-6 可见性

weibo_慕的地5184195
2020-05-11
悟空老师你好,我在其他书上看到final,产生一个疑问。volatile禁止重排序,在volatile写操作前的所有操作都是可见的,final是否有同样效果。
class FinalOrder{
int i;
final int f;
public FinalOrder(){
i = 1;
f = 1;
}
}
书上说i =1可能会在构造方法外执行,但f是有内存屏障。这里final为何不能和volatile一样.
写回答
1回答
-
悟空
2020-05-11
据我所知,final并没有类似的效果。
022020-05-11
相似问题