首页 > 解决方案 > 一个 CPU 内核可以立即观察到其他 CPU 内核的修改吗?

问题描述

假设核心 A 修改了内存中的一个单词,然后核心 B 尝试加载相同的单词。在这种情况下,核心 B 可以得到一个陈旧的值吗?

根据我的理解,这是可能的。例如,来自核 A 的缓存失效消息已排队进入核 B 的失效队列,但尚未完成。

但是在使用两个线程对其进行测试时,我从未观察到这一点:一个写入数据,另一个读取数据,然后检查顺序。

标签: multithreadingx86cpu-architecturecpu-cachememory-model

解决方案


推荐阅读