为了账号安全,请及时绑定邮箱和手机立即绑定

读写琐,多线程问题请教

读写琐,多线程问题请教

C#
ibeautiful 2018-12-25 15:13:49
我有一个变量,是读的多,写的少,因此,我是否只需要在写的时候进行同步的处理就可以了,但是我看了一些例子,好像是读和写的时候都要做处理,不太理解,高手给讲讲
查看完整描述

2 回答

?
MM们

TA贡献1886条经验 获得超2个赞

不可以,因为在高级语言看好像是一条语句,计算机硬件处理时实际上不是一条指令。 操作系统处理也可能会有一些中间过程。也就是说你的写并不是原子操作。在写的过程中实际上有很多中间过程,比如寄存器的读写,内存的读写,硬盘的读写(有可能要对硬盘缓存的虚拟内存中读写),而如果写到一半,就开始读,读出来的很可能是脏数据,特别是对一些比较大的数据结构的读写,发生这种情况的概率会非常大。所以不能只对写进行同步

查看完整回答
反对 回复 2018-12-29
  • 2 回答
  • 0 关注
  • 566 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信