Go语言协程调度|生产者消费者模型

2019年11月15日 0 条评论 2.74k 次阅读 0 人点赞

备注:管道的关闭时,管道中就不可以再写入数据,但是我们还是能读取数据的

用内建函数make创建的管道,如果没有定义管道的大小,默认是不能进行缓存的,也就是说,如果

channel:=make(chan string) 这种方法,如果往里面写入数据时必须要定义一个位置读取数据,否则就会发生阻塞死锁(deadlock),但是如果加上大小

例如 :

make(chan string,1024)默认就开启了1024字节的缓存能力大小,不一定需要一个位置去读取,我们也能够写入数据,但是写入的大小不能超过1024字节,否则会溢出,管道类型好比一个队列,定义队列长度,只有出队,我们才能继续进行入队操作。

以下是代码示例:

兰陵美酒郁金香

大道至简 Simplicity is the ultimate form of sophistication.

文章评论(0)

你必须 登录 才能发表评论