[Go] 解决go的fatal error: concurrent map writes map非并发安全
map不是并发安全的 , 当有多个并发的groutine读写同一个map时
会出现panic错误
concurrent map writes
例如下面的代码会出现这个错误:
var mMap map[int]int func TestMyMap(t *testing.T) { mMap = make(map[int]int) for i := 0; i < 5000; i++ { go func() { mMap[i] = i }() go readMap(i) } } func readMap(i int) int { return mMap[i] }