package main import ( "fmt" "time" ) func main() { c := make(chan string, 1) go transferNames(c) name := <-c fmt.Println(name) c <- "Bob" time.Sleep(time.Millisecond * 1000) } func transferNames(c chan string) { c <- "Tom" name := <-c fmt.Println(name) close(c) }