当前标签:WaitGroup
go sync 包 WaitGroup 的使用
2022-06-09
601
811
sync包提供了基本的同步基元,如互斥锁。除了Once和WaitGroup类型,大部分都是适用于低水平程序线程,高水平的同步使用channel通信更好一些。packagemain
import(
"fmt"
"sync"
)
funcmain(){
varwgsync.WaitGroup
items:=[]int{1,2,3,4
go WaitGroup 的使用方法
2023-03-23
377
508
在 Go 中,sync 包下的 WaitGroup 能有助于我们控制协程之间的同步。当需要等待一组协程都执行完各自任务后,才能继续后续逻辑。这种场景,就非常适合使用它。WaitGroup 提供三个 API。Add(delta int) 函数提供了 WaitGroup 的任务计数,delta 的值可以为正也可以为负,通常在添加任务时使用。Done() 函数其实就是 Add(-1),在任务完成时调用。