🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# **从关闭的channel中读数据会发生什么** 来看代码: ```go package main import ( "fmt" ) func main() { willClose := make(chan int, 10) willClose <- -1 willClose <- 0 willClose <- 2 <-willClose <-willClose <-willClose close(willClose) read := <-willClose fmt.Println(read) } ``` 代码创建了一个int类型的通道`willClose`,并且向其中写入三个值,然后再依次读出来。后面关闭这个通道后,再尝试从其中读数据,执行这个程序输出结果: ```bash $ go run readClose.go 0 ``` 这个结果表明,如果我们尝试从关闭的通道中读取数据,其会返回基本类型的初始值。