下面的一段代码为什么会产生错误?
func main() {
messages := make(chan string)
messages <- "test" //line 16
fmt.Println(<-messages)
}
生成以下错误。
fatal error: all goroutines are asleep - deadlock!
goroutine 1 [chan send]:
main.main()
/tmp/sandbox994400718/main.go:16 +0x80
一个值被发送到通道,并在下一行被接收。从技术上讲,它应该可以工作。
侃侃尔雅
慕侠2389804
相关分类