如何快速判断一个 chan 的有效性?

来源:5-5 Go语言-通道类型

Loedan

2020-01-09 01:22

如题,文档中讲到三点,通道已关闭、通道缓存已满、通道缓存已空,此时不同情况下对通道发送数据或读取数据系统会异常,那么如何快速的判断通道的状态是否正常?

写回答 关注

1回答

  • 慕妹1323779
    2020-01-14 16:00:33

    非缓存通道必须要有接收方才会执行发送操作,只有发送操作没有接收方是会报错的;缓存通道,可以用cap(容量)和len(长度)函数判断,如果长度等于容量即通道已满,长度为0即缓存为空。如果有没有考虑到的地方,欢迎补充。

Go语言第一课

Go语言入门教程,编程之必备知识扩散,打好Go语言编程基础

107752 学习 · 148 问题

查看课程

相似问题