MST

星途 面试题库

面试题:Go中WaitGroup实现并发任务同步等待基础

请用Go语言编写一个程序,使用WaitGroup来实现三个并发任务,每个任务打印出自己的任务编号,并且在所有任务完成后打印“All tasks are done”。
45.9万 热度难度
编程语言Go

知识考点

AI 面试

面试题答案

一键面试
package main

import (
    "fmt"
    "sync"
)

func main() {
    var wg sync.WaitGroup
    wg.Add(3)

    for i := 1; i <= 3; i++ {
        go func(taskNum int) {
            defer wg.Done()
            fmt.Printf("Task %d\n", taskNum)
        }(i)
    }

    wg.Wait()
    fmt.Println("All tasks are done")
}