From 08f341f9af0bbe9e182c44aa5d73846b1a8d849d Mon Sep 17 00:00:00 2001 From: Jian Han Date: Thu, 4 Jan 2018 21:02:20 +1000 Subject: [PATCH] sync wait group --- channel/basic/main.go | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/channel/basic/main.go b/channel/basic/main.go index b764178..3748da4 100644 --- a/channel/basic/main.go +++ b/channel/basic/main.go @@ -1,11 +1,15 @@ package main -import "fmt" +import ( + "fmt" + "sync" +) func main() { // unbuf() // buf() - nBuf() + // nBuf() + syncWaitGroup() } /* @@ -45,3 +49,17 @@ func nBuf() { <-done } } + +func syncWaitGroup() { + var wg sync.WaitGroup + // 开N个后台打印线程 + for i := 0; i < 10; i++ { + wg.Add(1) + go func(i int) { + fmt.Println("你好, 世界", i) + wg.Done() + }(i) + } + // 等待N个后台线程完成 + wg.Wait() +}