我试图从 Java 内存模型的角度来理解“顺序一致性”。JLS 的定义,第 17 章对我来说不是很清楚。
我会给出我的看法,如果我错了,请纠正我。具有一个线程顺序一致性的程序意味着如果在程序顺序中action1在action2之前,那么action2应该看到action1的结果。
有两个线程。
线程 1:
action1
action2
Run Code Online (Sandbox Code Playgroud)
线程2:
action3
action4
Run Code Online (Sandbox Code Playgroud)
如果action3看到 的结果action2,那么它也应该看到 的结果action1。