golang 主线程等待子线程执行完成

package main

import (
    "fmt"
    "sync"
)

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

    go func() {
        defer wg.Done()
        fmt.Println("线程1执行完成")
    }()

    go func() {
        defer wg.Done()
        fmt.Println("线程2执行完成")
    }()

    go func() {
        defer wg.Done()
        fmt.Println("线程3执行完成")
    }()

    wg.Wait()
    fmt.Println("所有线程执行完成")
}

你可能感兴趣的:(golang,开发语言,后端)