// 以下代码输出什么? func main() { runtime.GOMAXPROCS(2) wg := sync.WaitGroup{} wg.Add(10) for i := 0; i < 10; i++ { go func(i int) { fmt.Println("i: ", i) wg.Done() }(i) } wg.Wait() }
答案:0-9随机输出
问: 如果全部输出10, 能不能做到?怎么做? ##PS出这题真是chun....
答案:
代码改成即可全部输出10.
func main() { runtime.GOMAXPROCS(1) wg := sync.WaitGroup{} wg.Add(10) for i := 0; i < 10; i++ { go func() { fmt.Println("i: ", i) wg.Done() }() } wg.Wait() }