github.com/graybobo/golang.org-package-offline-cache@v0.0.0-20200626051047-6608995c132f/x/talks/2012/zen/race.go (about) 1 // +build OMIT 2 3 package main 4 5 import ( "fmt"; "net/http"; "time" ) 6 7 func main() { 8 urls := []string{"http://google.com/", "http://bing.com/"} 9 start := time.Now() 10 done := make(chan string) 11 for _, u := range urls { 12 go func(u string) { 13 resp, err := http.Get(u) 14 if err != nil { 15 done <- u + " " + err.Error() 16 } else { 17 done <- u + " " + resp.Status 18 } 19 }(u) 20 } 21 for _ = range urls { 22 fmt.Println(<-done, time.Since(start)) 23 } 24 }