请问为啥输出是4,进入的到ch里不是先进先出原则吗,我理解应该是输出是0的呀,求大神解释

XITEHIP · · 961 次点击
golwei
没有永恒.
``` package main import ( "fmt" "time" ) func main() { channelInt := make(chan int) for i := 0; i < 5; i++ { j := i go func(x int) { channelInt <- x }(j) time.Sleep(1000) } fmt.Printf("==>%d\n", <-channelInt) } ```
#3
更多评论
go协程执行的顺序是不定的
#1
我跑的是0啊,你跑过了吗?理论上也是0,无缓冲的channel
#2