加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 为什么阅读不是线程安全的?

发布时间:2020-12-16 05:30:18 所属栏目:百科 来源:网络整理
导读:我想知道为什么从内存读取不是线程安全的.在我迄今为止看到的这个问题中,尤其是 this的问题,从内存读取似乎并不是线程安全的. 我一直在Python编码一段时间,现在进入C.我从来没听说过Python中的阅读不是线程安全的. 如果我错了,请纠正我,但如果没有,请告诉我
我想知道为什么从内存读取不是线程安全的.在我迄今为止看到的这个问题中,尤其是 this的问题,从内存读取似乎并不是线程安全的.

我一直在Python编码一段时间,现在进入C.我从来没听说过Python中的阅读不是线程安全的.

如果我错了,请纠正我,但如果没有,请告诉我为什么从内存读取不是线程安全的.

解决方法

阅读是线程安全的,没有问题…..直到有人写到你正在读取的位置,然后…好的,希望你会在数据更改之前阅读,或者在数据更改后读取在这些情况下,不用担心),但有时候,只是当你真的不想要它,你会读取一半的写入,然后你会得到竞争垃圾数据.

减轻这种情况的方法是确保您只在任何写入之前或之后读取,这需要您检查写入是否发生,从而使用某种类型的同步锁.这使事情变慢,因为你显然检查锁,然后阅读,而不是阅读.如果您正在使用原始数据类型(例如,int),则可以使用CPU同步来快速加速.

作为py Python,可以通过语言运行时为您总是同步python数据,如果不是那么你迟早会得到相同的线程读取问题. (快速谷歌说是的,Python will suffer the same problems你不小心)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读