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