atomic主要用于
1)并发更新计数器/状态位等操作
2)实现lock free的相关数据结构
主要提供了如下方法:
1)AddXXX
2)CompareAndSwapXXX
3)SwapXXX
4)LoadXXX
5)StoreXXX
除此之外atomic还提供了value类型,可以实现针对对象的原子存取,不能CAS和Swap
很多并发的原语的实现都是依赖于原子操作的,因此原子操作的性能比其他的并发原语的性能要高一些
此文章为2月Day16学习笔记,内容来源于极客时间《Go 并发编程实战课》