Go并发
go并发需要满足
go memory model
的happens before
原则
Channel
具有队列特性
1 | ch:=make(chan T) // 双向通道 |
sync.Mutex
保护数据不被多个使用者并发读取或修改
sync.RWMutex: 读写锁,含写锁和读锁
1 | type Value struct{ |
sync.WaitGroup
让主协程等待其他子协程先完成任务
1 | var wg sync.WaitGroup |
sync.Once
确保代码在并发中仅被执行一次
sync.Cond
实现多个协程之间的通信
cover
id:122225604
画师: ノーコピーライトガール
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 suisbuds!