有人可以向我解釋為什么第一個代碼運行但第二個代碼失???第一 :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 關注
- 100 瀏覽
添加回答
舉報
0/150
提交
取消