爱编程的小didi 2022-03-31 19:30 采纳率: 20%
浏览 38

单线程下会出现数据的不一致性问题吗?

请问这样的回答是对的么?如果不对请另外回答。感谢!
可能会出现数据不一致的问题,这主要是因为代码优化的原因,使得程序在运行时,CPU直接从通用寄存器中取一个变量临时缓存的数据,而不是从内存中取数据,这样会使程序运行的效率变快。
但是,当这个变量时一个外围设备的寄存器时,这个寄存器是时常变化的,这时虽然cpu得到了这个变量的值,但不是这个寄存器的值。
多线程也有可能出现这样的问题。

  • 写回答

1条回答 默认 最新

  • threenewbee 2022-03-31 21:20
    关注

    如果是单线程单处理器,并且你的调用的库本身没有并发,那么不会出现。
    但是运行库可能会并发,多处理器切换也存在同步问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 3月31日

悬赏问题

  • ¥30 电脑误删了手机的照片怎么恢复?
  • ¥15 (标签-python|关键词-char)
  • ¥15 python+selenium,在新增时弹出了一个输入框
  • ¥15 苹果验机结果的api接口哪里有??单次调用1毛钱及以下。
  • ¥20 学生成绩管理系统设计
  • ¥15 来一个cc穿盾脚本开发者
  • ¥15 CST2023安装报错
  • ¥15 使用diffusionbert生成文字 结果是PAD和UNK怎么办
  • ¥15 有人懂怎么做大模型的客服系统吗?卡住了卡住了
  • ¥20 firefly-rk3399上启动卡住了