我见过几个不同的例子sync.WaitGroup
示例 1
var wg sync.WaitGroup
wg.Add(1)
go doStuff(&wg)
wg.Wait()
示例 2
wg := new(sync.WaitGroup)
wg.Add(1)
go doStuff(wg)
wg.Wait()
区别在于sync.WaitGroup初始化 方式var与new
如果使用该var选项,它必须作为&wg指向 goroutine 的指针传递,但如果我使用该new选项,我可以将其发送为wg
这两个例子有什么区别?以上2个哪一个是正确的?在某些情况下,一个比另一个更受欢迎吗?
我正在编写一个创建多个 s 的程序,所以是否使用orsync.WaitGroup有关系吗?newvar
撒科打诨
相关分类