当前位置:网站首页>go基础之并发
go基础之并发
2022-08-11 09:47:00 【51CTO】
go并发非常简单,就是使用关键字go添加到任意一个函数前面,该函数就会成为一个goroutine。
最后time.Sleep(5 * time.Second)是为了阻止还没有执行完print()就结束程序,要不会还没有打印程序就结束了。
根据输出都是从0-10,好像并发没有什么作用,主要是print函数太快,所以看不出有什么区别。把print函数加些延迟效果就出来了
假如有这么一个需求,在2次print函数之后,还有个函数名字叫call(),这个call()函数需要在2次print函数执行后才能执行,这样如何写呢?
go语言sync包中提供了一个名叫等待组的机制,使用Add方法设置等待组的计数器,使用Done方法对等待组的计数器减1,调用Wait方法会一直阻塞,直到计数器为0才往后执行。
通过wg.Add(2)设置计数器为2,每次执行完print时,通过wg.Done()使计数器减1,wg.Wait()进行阻塞,2个print函数执行完,计数器变为0,往后执行call()。这样最后的一个等待时间就不再需要了。
边栏推荐
- wordpress插件开发03-简单的all in one seo 插件开发
- Adobe LiveCycle Designer report designer
- 中移链EOSJS实战使用
- WordpressCMS主题开发02-制作顶部header.php和footer.php
- 使用树莓派和OAK相机部署机器人视觉模型
- OAK-FFC Series Product Getting Started Guide
- Database Basics
- Quickly submit a PR (Web) for OpenHarmony in 5 minutes
- 【luogu CF1427F】Boring Card Game(贪心)(性质)
- Oacle数据库使用问题
猜你喜欢

PowerMock for Systematic Explanation of Unit Testing

The no-code platform helps Zhongshan Hospital build an "intelligent management system" to realize smart medical care

网络模型(DeepLab, DeepLabv3)

同态加密简介HE

OAK-FFC Series Product Getting Started Guide

训练一个神经网络要多久,神经网络训练时间过长

canvas图片操作

Network model (U - net, U - net++, U - net++ +)

Software custom development - the advantages of enterprise custom development of app software
![Array, string, date notes [Blue Bridge Cup]](/img/71/242804a93332fc545662b983f3aa2a.png)
Array, string, date notes [Blue Bridge Cup]
随机推荐
数据库基础
1002 A+B for Polynomials
mindspore如何实现每50个epoch检测一次psnr
分割学习(loss and Evaluation)
【luogu CF1286E】Fedya the Potter Strikes Back(字符串)(KMP)(势能分析)(线段树)
基于PSO在满足可靠性的基础上实现费用最优MATLAB仿真(含完整matlab代码)
如何开手续费低靠谱正规的期货账户呢?
tar 命令使用
Typora and basic Markdown syntax
Primavera Unifier -AEM 表单设计器要点
QTableWidget 使用方法
【无标题】超时超时超时超时超时
Open Office XML 格式中的 Style 设计原理
Oracle database use problems
MongoDB 对索引的创建查询修改删除 附代码
最强大脑(2)
验证拦截器的执行流程
HStreamDB v0.9 released: Partition model extension, support for integration with external systems
HDRP Custom Pass Shader 获取世界坐标和近裁剪平面坐标
Primavera P6 Professional 21.12 登录异常案例分享