@Terry-Mao
通过golang race detector检查,显示有data race
代码:
1 package main
2 import (
3 "math/rand"
4 "strconv"
5 "sync"
6 )
7
8 func main() {
9 map1 := make(map[string]int)
10 map1["100"] = 100
11 var wg sync.WaitGroup
12 wg.Add(1)
13 go func() {
14 for i := 0; i < 10000000; i++ {
15 map2 := make(map[string]int)
16 j := rand.Intn(30)
17 for k := 0; k < j; k++ {
18 map2[strconv.Itoa(k)] = k
19 }
20 map1 = map2
21 }
22 wg.Done()
23 }()
24 for i := 0; i < 10; i++ {
25 wg.Add(1)
26 go func() {
27 for i := 0; i < 1000000; i++ {