channel 规则

操作规则 #

操作 nil 已关闭的 channel 未关闭有缓冲区的 channel 未关闭无缓冲区的 channel
关闭 panic panic 成功关闭,然后可以读取缓冲区的值,读取完之后,继续读取到的是 channel 类型的默认值 成功关闭,之后读取到的是 channel 类型的默认值
接收 阻塞 不阻塞,读取到的是 channel 类型的默认值 不阻塞,正常读取值 阻塞
发送 阻塞 panic 不阻塞,正常写入值 阻塞

编译规则 #

操作
接收 只写 channel 编译错误
发送 只读 channel 编译错误
关闭 只读 channel 编译错误

转载申请

本作品采用 知识共享署名 4.0 国际许可协议 进行许可,转载时请注明原文链接,图片在使用时请保留全部内容,商业转载请联系作者获得授权。

© 蛮荆 | 陕公网安备 61011302001681 号 | 陕ICP备2023004378号-1 | Rendered by Hugo