请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关闭channel

在关闭channel后,如果继续发送数据, 则会panic: send on closed channel。


搜了一圈没有发现可以判断channel是否已经关闭的方法, 那么遇到这种问题该如何处理比较好?

我们应该在什么情况下,优雅而安全的去close channel呢?


正在回答 回答被采纳积分+3

2回答

ccmouse 2018-02-27 21:17:25

另一个角度看,channel里面的数据如何流动,channel如何close,会不会close,是发送方和接收方约定的。

0 回复 有任何疑惑可以回复我~
ccmouse 2018-02-27 21:15:40

channel是由发送方关闭的。所以发送方知道channel被关闭了,不知道的话需要自行维护channel有没有关掉。接收方可以加收一个bool的形式来判断channel是否关闭,这个有提到。
一般情况下我们并不需要一个isClosed函数,而且系统也没有这样的函数。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信