4
A
回答
6
将通道变量设置为零只是简单地将变量设置为零,而保留之前引用的通道已初始化。
与将其他变量设置为零相同。
如果还有其他对该频道的引用,您仍然可以访问它。如果没有,它将被垃圾收集。
此外,nil
与封闭通道在写入或读取时行为不同。从戴夫·切尼的博客文章,Channel Axioms,这是我的全部推荐阅读:
- 一个发送到零通道块永远
- 一个从零通道块接收永远
- 一个发送到封闭的通道恐慌
- 甲从关闭信道接收返回零值立即
2
它符合语言规范。 您可以永久收到来自封闭渠道的信息,但是在封闭渠道上写信会导致运行时恐慌。 在一个零通道上的操作都会永久阻止。 这种行为通常用于同步方案。
相关问题
- 1. 关闭频道
- 2. Netty不关闭频道
- 3. Netty - 频道立即关闭
- 4. Paramiko SSHException频道关闭
- 5. Netty频道随机关闭
- 6. Netty:ClosedChannelException当关闭频道
- 7. 何时关闭频道?
- 8. 频道api GAE频道开放后立即关闭
- 9. 兔子 - 打开一个关闭频道
- 10. 卡桑德拉频道已关闭
- 11. amqp-咖啡频道没有关闭
- 12. 使用Google Channel API关闭频道
- 13. 如何有效关闭频道?
- 14. 频道PubDate Vs项目pubdate
- 15. Go频道vs Java BlockingQueue
- 16. Lenskit:什么是频道,副频道,输入副频道
- 17. 频道频率数
- 18. 取消订阅频道,仍在频道
- 19. Javascript音频频道活动
- 20. 音频频道选择
- 21. 菲尼克斯控制器vs频道
- 22. 音频信道?
- 23. GAE频道api
- 24. VueJS + Django频道
- 25. Django频道
- 26. 频道URL Facebook
- 27. 为什么我的RabbitMQ频道继续关闭?
- 28. 为什么Go的频道可以关闭两次?
- 29. golang:如何在所有goroutines完成后关闭频道?
- 30. 如何在Netty握手之前优雅地关闭频道?
通道值与任何其他值一样。如果没有引用它,它将被垃圾收集。相关/有用的知道:[非初始化通道如何表现?](http://stackoverflow.com/questions/39015602/how-does-a-non-initialized-channel-behave/39016004#39016004) – icza