// +build ignore,OMIT package main import ( "fmt" "time" ) // START OMIT func main() { textChannel := make(chan string) words := []string{"ho!", "hey!"} secs := []int{2, 1} // Create a goroutine per word for i, word := range words { go say(word, secs[i], textChannel) // & } // Wait for response via channel N times for _ = range words { fmt.Println(<-textChannel) } } // say sends word back via channel after sleeping for X secs func say(word string, secs int, textChannel chan string) { time.Sleep(time.Duration(secs) * time.Second) textChannel <- word } // STOP OMIT