当前位置: 首页 > news >正文

公司网站做地图地址在线设计平台行业环境

公司网站做地图地址,在线设计平台行业环境,pc端网站怎么做自适应手机端,漳州建设银行网站首页WaitGroup 背景 如果将一个任务分为任意个小任务,并且不关心小任务的执行顺序,并且希望等待全部的小任务执行完成后再去操作后面的逻辑,那我推荐你用sync.WaitGRoup 使用方法 比如,有一个任务需要执行 3 个子任务,…

WaitGroup

背景

如果将一个任务分为任意个小任务,并且不关心小任务的执行顺序,并且希望等待全部的小任务执行完成后再去操作后面的逻辑,那我推荐你用sync.WaitGRoup

使用方法

比如,有一个任务需要执行 3 个子任务,那么可以这样写:

package mainimport ("fmt""sync"
)func main() {// 定义信号量var wg sync.WaitGroup// wg 添加任务数量wg.Add(3)// 创建三个携程处理wggo func(i int, wg *sync.WaitGroup) {// 提前定义结束defer wg.Done()fmt.Printf("执行任务%d\n", i)}(1, &wg)go func(i int, wg *sync.WaitGroup) {// 提前定义结束defer wg.Done()fmt.Printf("执行任务 %d\n", i)}(2, &wg)go func(i int, wg *sync.WaitGroup) {// 提前定义结束defer wg.Done()fmt.Printf("执行任务 %d\n", i)}(3, &wg)// 等待所有携程执行完毕fmt.Println("等待所有任务执行中....")wg.Wait()fmt.Println("所有任务执行完了....")
}

踩坑点避免

1.调用时应该调用&wg而不是wg(调用引用)

// 正确
go handlerTask1(&wg)// 错误
go handlerTask1(wg)

2.确保wg.Add()应该在wg.Wait()之前执行

 // 错误
var wg sync.WaitGroupgo handlerTask1(&wg)wg.Wait()...func handlerTask1(wg *sync.WaitGroup) {wg.Add(1)defer wg.Done()fmt.Println("执行任务 1")
}

3.注意 wg.Add() 和 wg.Done() 的计数器保持一致

小结

sync.WaitGroup 使用起来比较简单,一定要注意不要踩到坑里。

其实 sync.WaitGroup 使用场景比较局限,仅适用于等待全部子任务执行完毕后,再进行下一步处理,如果需求是当第一个子任务执行失败时,通知其他子任务停止运行,这时 sync.WaitGroup 是无法满足的,需要使用到通知机制(channel)。

Channel

由于时间原因,在这里只简单讲一下Channel的作用吧

1.作为锁保证多协程执行时线程安全

2.控制并发数量

https://juejin.cn/post/7175028144812851237

http://www.yayakq.cn/news/335434/

相关文章:

  • 网站建设的背景音乐提升网站建设品质公司
  • 网站建设前期分析的内容番禺网站建设技术
  • 网站的发展前景关于我们网页设计模板
  • 网站主体备案信息查询Wordpress 搜索热词
  • 山东兽药网站建设网址价格
  • 网站备案编号肥料网站建设
  • 淘宝客怎么自己做网站及APP情女照片做杯子网站
  • 一个wordpress模版几个网站爱站网功能
  • 天津正规网站建设调试公司网站建设公司华网天
  • 做网站公司凡科做网站 异地域名
  • 保定高碑店网站建设wordpress 展示插件 汉化
  • 商业计划书网站建设阿里巴巴国际站运营教程
  • 阿里巴巴与慧聪网网站建设对比温州网约车哪个平台最好
  • 建设厅网站如何查询企业信息网群晖 6 wordpress
  • 营销型网站优化建设电影网站广告哪里找
  • 网站建设电子合同怎样做关于自己的网站
  • 建站系统cms是什么做搜狗网站排名软件
  • 关于给予网站建设的请求网站备案密码丢了怎么办
  • 怎样弄免费网站网页设计的通用规则有哪些
  • 宠物医疗设计素材网站有做国际网站生意吗
  • 风景网站模版中国10大建筑公司
  • 有了源码可以做网站吗苏州模板建站哪家好
  • 网站链接结构tp框架做购物网站开发
  • 国外做设计的网站有哪些wordpress能导入多少产品
  • 在线购物网站设计海口网
  • c2c网站功能百度官网网址
  • 网站建设蘑菇街淘客网站开发
  • 查找网站域名wordpress 企业站模版
  • vps建设网站需要条件甘肃路桥建设集团有限公司网站
  • 网站建设季度考核评价工作总结微慕WordPress开发