go通道
小世界-_-
沉迷代码的程序媛
展开
-
go 通道(无缓冲通道和缓冲通道)
无缓冲通道:数据结构:队列特点:先入先出同时只能一个goroutine访问发送与接收需要成对出现宕机情况:通道关闭后进行发送会导致宕机一个gouroutine停止接收后,继续发送会导致宕机关闭:close(ch)缓冲通道:与无缓冲通道相似,不同点:缓冲通道的阻塞条件:通道满时,发送会发生阻塞。通道为空时,接收会发生阻塞。...原创 2019-02-22 18:53:45 · 644 阅读 · 0 评论 -
让两个协程交替打印1-100
package mainimport "fmt"func main() { numChan := make(chan int) exitChan := make(chan struct{}) go func() { for i := 1; i <= 101; i = i + 2 { result, ok := <-numCha...转载 2019-06-28 11:01:45 · 1011 阅读 · 0 评论 -
让N个协程交替打印1-100
package mainimport ( "fmt")//让N个协程交替打印1-100 让N个协程交替打印1-100/*利用缓存通道进行阻塞的传递*/func main() { gorutinenum := 5 var chanslice []chan int exitchan := make(chan int) for i := 0; i ...原创 2019-06-28 14:17:11 · 492 阅读 · 0 评论