2020
10-08
10-08
深度解密 Go 语言中的 sync.map
工作中,经常会碰到并发读写map而造成panic的情况,为什么在并发读写的时候,会panic呢?因为在并发读写的情况下,map里的数据会被写乱,之后就是Garbagein,garbageout,还不如直接panic了。是什么Go语言原生map并不是线程安全的,对它进行并发读写操作的时候,需要加锁。而sync.map则是一种并发安全的map,在Go1.9引入。sync.map是线程安全的,读取,插入,删除也都保持着常数级的时间复杂度。sync.map的...
继续阅读 >