for和协程问题

Electricightlord · · 1320 次点击
你遇到的这个问题应该不是for和协程的问题. ``` func main() { for i := 0; i < 1; i++ { go func(i int) { defer func() { fmt.Println("end-----") }() fmt.Printf("%d goroutine\n", i) res, err := http.Get("http://www.baidu.com") // 这里使用http正常,当使用https时和你的情况类似 if err != nil { panic(err) } fmt.Println(res) }(i) } for { } } ``` 不过还是很难解释你遇到的问题
#3
更多评论
每次循环加上time.Sleep(time.Duration(2)*time.Second),让main等待协程启动,不然协程还没启动主函数就执行完了,就启动不了了
#1
程序最后加了 `for{}` 让`main`停留在了这里
#2