Memory Consistency Properties的第一个要点是:


  
  线程中的每个动作都会发生-在该线程中的每个动作之前,该顺序按程序顺序出现。
  


我想这是Java内存模型相对较新的功能,因为Jon Skeet didn't mention it in 2011

实际上,这一要点到底意味着什么?我很难理解它。它仅表示“单个线程中没有并发问题”吗?还是还有更多呢?

最佳答案

实际上,这一要点到底意味着什么?


线程中的所有内容名义上都按照程序执行的顺序发生(实际上,它可以重新排序指令以使程序运行更快)


  我很难理解它。


您很可能在考虑问题。假设您正在阅读一首歌的歌词。每行中的单词出现在它之前的所有单词之后,而该行之后的所有单词出现在它之后。


  它仅表示“单个线程中没有并发问题”吗?


是的,不应该,但是可以。例如Spectre and Meltdown安全问题利用了这一点。

10-05 18:45