为什么要有sync.Map
顾名思义,sync.Map也是一种map,相当于对原生map做了封装,之所以出现的原因是map不是线程并发安全的。go设计map是考虑到map同时读写的场景不多,所以设计map在进行写操作时是不允许进行其他的操作,否则会报fatal error: concurrent map read and map write
错误,示例如下:
package main
func main() {
m := make(map[int]int)
go func() {
for {
_ = m[1]
}
}()
go func(</