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

XITEHIP · · 974 次点击
结果偶尔4偶尔0,因为你的for循环体没有什么内容,就是在不断创建协程,for循环结束后,这5个协程几乎无间隙连续被创建,在一个极短的时间间隙内创建多个协程,程序并不能精确的判断他们创建的先后顺序。 3楼的代码在for循环内sleep了一下,恰到好处。
#4
更多评论
go协程执行的顺序是不定的
#1
我跑的是0啊,你跑过了吗?理论上也是0,无缓冲的channel
#2