Golang学习笔记之channel
声明
channel声明方式,通过make
方法创建
my_chans := make(chan int, 20) //类型为int,长度为20
channel操作
a := 1
b := 2
my_chans := make(chan int, 20)
my_chans <- a //放入channel
my_chans <- b //放入channel
c := <- mychans //从channel中取出
d := <- mychans //从channel中取出
超时定时器
防止读取channel
超时的定时器,超时时间设置为5s。
select {
case <- time.After(time.Second * 5) :
fmt.Println("timeout")
case result := <- results :
fmt.Println("result:", result)
}
同样也可以写个防止写入channel
超时的定时器。