func Test_chanel(t *testing.T) { c := make(chan int, 1) go func() { time.Sleep(time.Second * 3) close(c) }() for { select { case i := <-c: log.Printf("chan is closed, value is [%v]", i) } } }
close的channel, 從裏面能夠一直取到值,不過是默認值,具體值取決於類型。code