golang sync.WaitGroup 配合chan 获取异步任务结果

 最近搞了很多设备发布异步信息,想着执行完后统一获取下执行结果。

 搞了下:


var ch = make(chan string, 4)
var wg sync.WaitGroup

func main() {
	wg.Add(10)
	for i := 0; i < 10; i++ {
		go test1()
	}
	wg.Wait()
	println(ch)
}

func test1() {
	for i := 0; i < 10000; i++ {
		println(i)
	}
	wg.Done()
	ch <- "hello"
}

等待ch 全部获取到hello后 即可执行完毕。

猜你喜欢

转载自blog.csdn.net/u010919083/article/details/129710997