无缓冲通道:
数据结构:队列
特点:
先入先出
同时只能一个goroutine访问
发送与接收需要成对出现
宕机情况:
通道关闭后进行发送会导致宕机
一个gouroutine停止接收后,继续发送会导致宕机
关闭:close(ch)
缓冲通道:
与无缓冲通道相似,不同点:
缓冲通道的阻塞条件:
通道满时,发送会发生阻塞。
通道为空时,接收会发生阻塞。
发送与接收操作不需要成对出现。
并发与并行的区别:
并发:函数之间的执行顺序是不确定的。
并行:多个函数同时进行。