// PREDICT: what happens? Can recover() save you? Run it a few times. // Then run with: go run -race . package main import ( "fmt" "time" ) func main() { defer func() { if r := recover(); r != nil { fmt.Println("recovered:", r) // will this ever print? } }() m := make(map[int]int) for i := 0; i < 100; i++ { go func(i int) { m[i] = i }(i) } time.Sleep(200 * time.Millisecond) fmt.Println(len(m)) }