使用goroutine出现BUG,请帅裂苍穹的道友帮忙看下

lichenjie1105 · · 1162 次点击
主綫程執行比go協程執行要快,主綫程執行結束之後關閉所以協程沒法執行。 建議讀一下GO并發編程這本書,裏面有詳細底層原理介紹。
#5
更多评论
buguang01
https://github.com/buguang01
因为主协程结束了。所以子协程没跑完就被关闭了 正确的做法应该是: wg :=make(sync.Waitgroup) func main{ wg.Add(2) go say("world") go say("hello") wg.Wait() } func say(s string){ //你的代码...后面加上这句 wg.Done() }
#1
正解。主协程退出,子协程没有跑完
#2