golang代码 等待goroutine结束

 

    ch := make(chan struct{})
    for _, f := range filenames {
        go func(f string) {
            .....
            ch <- struct{}{}
        }(f)
    }

    for range filenames { <-ch }    // 等待goroutine执行完毕

    --------------------------------------------------------------------------------
    var wg sync.WaitGroup


    for i := 0; i < 10; i++ {
        wg.Add(1)

        go func() {
            fmt.Println("你好, 世界")
            wg.Done()
        }()
    }

    wg.Wait()

 

posted @ 2020-05-27 20:25  是的哟  阅读(415)  评论(0)    收藏  举报