并发执行的问题

go2love · 2023-03-14 18:13:08 · 2278 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2023-03-14 18:13:08 的主题,其中的信息可能已经有所发展或是发生改变。

请教一下,自己写了2个函数,均是持续5秒采集数据。在主函数中不加go调用的时候,总共花10秒执行完成,但是都加上go之后,执行1秒就完事儿了,也不报错,看着数据也不太合理。我理解并发执行是不是怎么着也得5秒执行完成呀,除了在main中的2个函数前面加了go没做别的设置和操作,请问是不是还需要加别的东西?


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2278 次点击  
加入收藏 微博
5 回复  |  直到 2023-03-15 15:56:41
yleoer
yleoer · #1 · 2年之前

搜索 sync.WaitGroup 的使用例子

heyHui2018
heyHui2018 · #2 · 2年之前

main里在go func后加个等待,简单点就sleep,复杂点就waitgroup。1s不到是因为main执行完了

go2love
go2love · #3 · 2年之前
yleoeryleoer #1 回复

搜索 `sync.WaitGroup` 的使用例子

收到,谢谢

go2love
go2love · #4 · 2年之前
heyHui2018heyHui2018 #2 回复

main里在go func后加个等待,简单点就sleep,复杂点就waitgroup。1s不到是因为main执行完了

收到,谢谢

go2love
go2love · #5 · 2年之前
heyHui2018heyHui2018 #2 回复

main里在go func后加个等待,简单点就sleep,复杂点就waitgroup。1s不到是因为main执行完了

都试过了,都管用哈。还是waitgroup更好一点,sleep是在等待时间可控的情况下用着没问题,wg的话虽然写起来稍微麻烦一点点,但是还是比sleep适用场景多一些,感谢指导哈。

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传