作者回复: 主携程会阻塞等待接收10个ch传来的我数据。所以在循环退出前程序不会退出
作者回复: 继续看我的close和广播那一节,你就会有答案
作者回复: 其实是两种不同的编程模型,在前面有过介绍
作者回复: 最有用的就是那本经典“Go programming”和Go的官方文档了。另外,youtube上有不少Go创始人的视频讲座都值得看看。
作者回复: Before和After的一样吗? 什么机器?
作者回复: 当你的buffered chan满的时候生产者放不进东西一样阻塞,但是你要注意你的接受者是主协程,而你的生产者是其他协程,所以不管生产者协程是否被阻塞,主要外部主协程退出,就会整合都推出了
作者回复: 1. 你的wg.Add(1)要放在子线程的外面。你可以再仔细看看课程里的代码。 2. 实际上你没有必要用wait group,利用chan的阻塞就不会推出,只有channel关闭时才会break循环 3. 代码里没看见close啊