您的位置:首页 > 科技 > 能源 > 安徽哪些地方封城了_怀化网站设计_口碑营销案例有哪些_今日最新国际新闻头条

安徽哪些地方封城了_怀化网站设计_口碑营销案例有哪些_今日最新国际新闻头条

2024/11/17 23:36:47 来源:https://blog.csdn.net/qq_34631220/article/details/142301622  浏览:    关键词:安徽哪些地方封城了_怀化网站设计_口碑营销案例有哪些_今日最新国际新闻头条
安徽哪些地方封城了_怀化网站设计_口碑营销案例有哪些_今日最新国际新闻头条

1、简单使用(这个执行完成,如果进程执行比较久,这里不会等待它们结束)

package mainimport "time"func main() {go func() {println("Hello, World!")}()time.Sleep(1 * time.Second)
}

2、wg.Add(数量)使用,这个会等待,直到全部完成

func main() {wg := sync.WaitGroup{}for i := 0; i < 10; i++ {wg.Add(1)go calc(&wg, i)}wg.Wait()fmt.Println("all goroutine finish")
}
func calc(w *sync.WaitGroup, i int) {fmt.Println("calc:", i)time.Sleep(time.Second)w.Done()
}
传值localI := i,不能直接使用i,会重复,因为你在下次使用可能i已改变
var wg sync.WaitGroup
numGoroutines := 100
wg.Add(numGoroutines) //100个
for i := 0; i < numGoroutines; i++ {localI := igo func() {fmt.Println("Value:", localI)fmt.Println("大得")wg.Done() //减1,直到全部减完,结束}()
}
wg.Wait()
fmt.Println("执行完了")

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com