触发器中发生重排序
来源:13-4 适用场合2

慕桂英5194916
2020-09-12
老师好,想请问下在触发器的场景下,
//Thread A
configOptions = new HashMap();
…
initialized = true;
//Thread B
while(!initialized)
sleep();
// use configOPtions
如果线程A中的语句发生了重排序,initialized=true;被先执行了,在线程B被触发时不是可能A中configOptions = new HashMap();这些语句都还没执行而无法读到正确的配置吗?怎么保证initialized=true;是在线程A的最后运行的呢?
写回答
1回答
-
慕桂英5194916
提问者
2020-09-12
没注意到下面说的会禁止指令重排序,已经理解了,没问题了
00
相似问题