gpt4 book ai didi

Golang : when there's only one writer change the value using atomic. StoreInt32, 多个读卡器中是否需要使用atomic.LoadInt32?

转载 作者:数据小太阳 更新时间:2023-10-29 03:14:23 28 4
gpt4 key购买 nike

正如标题所说。基本上我想知道的是 atomic.StoreInt32 在写入时也会锁定读取操作吗?

另一个相关问题:atomic.StoreUint64(&procRate, procCount)是否等同于atomic.StoreUint64(&procRate, atomic.LoadUint64(&procCount))

提前致谢。

最佳答案

是的,当您同时加载和存储相同的值时,您需要使用原子操作。竞争检测器应该就此向您发出警告。

关于第二个问题,如果procCount值也被并发使用,那么还是需要使用原子操作加载。这两个是等价的:

atomic.StoreUint64(&procRate, procCount)
atomic.StoreUint64(&procRate, atomic.LoadUint64(&procCount))

前者直接读取procCount传递给StoreUint64,而后者传递通过LoadUint64安全获取的副本。

关于Golang : when there's only one writer change the value using atomic. StoreInt32, 多个读卡器中是否需要使用atomic.LoadInt32?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41277379/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com