multithreading - 一个 CPU 内核可以立即观察到其他 CPU 内核的修改吗?
问题描述
假设核心 A 修改了内存中的一个单词,然后核心 B 尝试加载相同的单词。在这种情况下,核心 B 可以得到一个陈旧的值吗?
根据我的理解,这是可能的。例如,来自核 A 的缓存失效消息已排队进入核 B 的失效队列,但尚未完成。
但是在使用两个线程对其进行测试时,我从未观察到这一点:一个写入数据,另一个读取数据,然后检查顺序。
解决方案
推荐阅读
- php - 如何通过 cURL 和 PHP 正确检索 POST 数据?
- php - 用于在网站表单上验证用户电话号码的服务器
- azure - Azure 多租户应用程序使用 RBAC 读取/写入存储帐户
- aws-lambda - 如何将 CloudWatchEvent 从 lambda 发送到 EventBridge 目标
- sql - Oracle SQL 收入 YTD 计算
- python - Python绑定公共IP以在没有相同网络的情况下连接
- redis - 数据库选择来实现一个程序来检索实时会话中的前 10 个投票问题
- junit5 - 是否可以在同一个测试文件中混合 jqwik @Property 方法和 junit5 @Test 方法?
- passwords - 此处未经授权映射空白方块
- ruby - 找不到 Gem IO-Console