我个人觉得一定会打印出2,
out <- 2这里应该会阻塞主进程,直到打印出2才会结束
**实际运行:2或者超时无输出。**
**为什么呢 想不懂**
##### 代码如下
```go
package main
import (
"fmt"
)
func f1(in chan int) {
//fmt.Println("1")
fmt.Println(<-in)
}
func main() {
out := make(chan int)
go f1(out)
out <- 2
}
```
运行链接:https://play.golang.org/p/YvlSvIGw_Dp
更多评论
<a href="/user/jarlyyn" title="@jarlyyn">@jarlyyn</a> 阻塞的不是主进程么?
ch<-2,往信道发送2,等待go协程接收
#2