有人可以向我解释为什么第一个代码运行但第二个代码失败?第一 :func main() { channel := make(chan int) go demo(channel) num := <-channel println(num)}func demo(channel chan int) { channel <- 2}第二个:func main() { demo()}func demo() { channel := make(chan int) channel <- 2 num := <-channel println(num)}在第二个中,我在演示功能中从通道中获取输入,但它仍然会造成死锁,有人可以简要解释一下吗?我可以看到,当我在同一范围内调用通道时,它会导致问题。
- 2 回答
- 0 关注
- 78 浏览
添加回答
举报
0/150
提交
取消