哪些数据类型本质上是原子的

我想知道 Go 中哪些数据类型本质上是线程安全的(如果有的话)。

我的假设是整数、浮点数和布尔值是安全的,而复合类型不是。

  • 我的假设正确吗?

  • 在改变复合类型与替换复合类型方面是否有不同的考虑?

  • 渠道呢?

谢谢你。


猛跑小猪
浏览 249回答 2
2回答

慕沐林林

我不相信它们中的任何一个都保证是原子的,但有可能在实践中有些(当然,原子我们的意思是从两个线程同时分配给它们将产生一个或另一个值,而不是一些第三个值(例如来自每个值的位的组合)-我们并不是说您可以原子地比较和存储或类似的东西)。最好的办法是查看Go Memory Model。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go