for 循环中使用go routine,不能打印日志,是什么情况?
package main
import (
"fmt"
)
func task(i int) {
fmt.Println(i)
}
func main() {
for i := 0; i < 5; i++ {
go task(i)
}
}
for 循环中使用go routine,不能打印日志,是什么情况?
package main
import (
"fmt"
)
func task(i int) {
fmt.Println(i)
}
func main() {
for i := 0; i < 5; i++ {
go task(i)
}
}
因为你的goroutine还没打印出来,主进程就退出了,然后就88了,你可以在主进程里等待goroutine执行完了再退出,用chan就可以实现。