下面的代码创建了两个匿名的异步函数, 然后通过waitgroup来等待这两个异步方法
package main
import (
"fmt"
"sync"
)
func main() {
var wg sync.WaitGroup
wg.Add(2)
fmt.Println("Started...")
go func() {
defer wg.Done()
fmt.Println("first thread finished")
}()
go func() {
defer wg.Done()
fmt.Println("second thread finished")
}()
fmt.Println("waiting...")
wg.Wait()
fmt.Println("done")
}
