golang 中channel 缓存channel 和无缓存channel的区别
var c=make(chan int,1)
fmt.Println("Main going to call hello go goroutine")
go func(c chan int) {
fmt.Println("hello go routine is going to sleep")
time.Sleep(4 * time.Second)
fmt.Println("hello go routine awake and going to write to done")
c<-1
}(c)
<-c
fmt.Println("Main received data")