0110-Go-等待组

环境

  • Time 2022-08-24
  • Go 1.19

前言

说明

参考:https://gobyexample.com/waitgroups

目标

使用 Go 语言的等待组。

示例

package main

import (
    "fmt"
    "sync"
    "time"
)

func worker(id int) {
    fmt.Printf("Worker %d starting\n", id)

    time.Sleep(time.Second)
    fmt.Printf("Worker %d done\n", id)
}

func main() {

    var wg sync.WaitGroup

    for i := 1; i <= 5; i++ {
        wg.Add(1)
        i := i
        go func() {
            defer wg.Done()
            worker(i)
        }()
    }

    wg.Wait()
}

总结

使用 Go 语言的等待组。

附录

posted @ 2022-11-27 19:25  jiangbo4444  阅读(42)  评论(0)    收藏  举报