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  }