package main import "fmt" func main() { input := make(chan int, 10) wait := make(chan int) for i := 0; i < 10; i ++ { input <- i } close(input) go func() { for { if i, ok := <- input; ok { fmt.Println(i) } else { break } } wait <- 1 }() <-wait } //go/4425