我们可以在 Go lang 中启动一个贴花频道两次吗?
package main
import (
"fmt"
)
func emit(c chan string) {
words := []string {"The", "quick", "brown", "fox"}
for _, word := range words {
c <- word
}
close(c)
}
在函数 main 如果我尝试使用相同的通道两次,我将获得该通道的默认值
func main() {
wordChannel := make(chan string)
go emit(wordChannel)
for word := range wordChannel {
fmt.Printf("%s ", word)
}
go emit(wordChannel)
word1 := <-wordChannel
fmt.Printf("%s" , word1) // prints Default value
}
所以要再次使用它,我必须声明另一个频道。如果这不是错误,为什么在 Go Lang 中这样做。? 我正在使用 go -lang 1.6 版
白板的微信
相关分类