以下代码会输出什么
A、1 B 、报错 C、无输出
package main
import (
"fmt"
"time"
)
var ch chan int
func main() {
go func() {
fmt.Println(<-ch)
}()
go func() {
time.Sleep(3 * time.Second)
ch = make(chan int)
ch <- 1
}()
time.Sleep(10 * time.Second)
}
正确答案
C
原因是由于读取了未初始化的channl 导致 死锁