多协程执行后使用channel收集结果--初级版本
func job(index int) int { time.Sleep(time.Millisecond*500) return index } func main() { result:=make(chan int) for i:=0;i<5;i++{ go func(index int) { result<-job(index) }(i) } count:=0 for item:=range result{ count++ fmt.Println(item) if count == 5{ close(result) break } } }
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: