福哥答案2020-11-12:

as-if-serial语义单线程执行结果不被改变。
happen-before语义正确同步的多线程执行结果不被改变。


这道题网上已经说烂了,就不必重复了。
happens-before 规则
深入理解happens-before和as-if-serial语义