go的数据类型-其他数据类型-channel(二) 当前消息
2023-04-21 16:21:08 来源:腾讯云
(资料图)
Channel的使用示例
以下是一个使用Channel的示例程序,该程序创建了两个Goroutine,并使用Channel在它们之间进行通信和同步。
package mainimport ("fmt""time")func worker(id int, jobs <-chan int, results chan<- int) {for j := range jobs {fmt.Printf("worker %d started job %d\n", id, j)time.Sleep(time.Second)fmt.Printf("worker %d finished job %d\n", id, j)results <- j * 2}}func main() {jobs := make(chan int, 100)results := make(chan int, 100)for w := 1; w <= 3; w++ {go worker(w, jobs, results)}for j := 1; j <= 9; j++ {jobs <- j}close(jobs)for a := 1; a <= 9; a++ {<-results}}
在这个示例程序中,我们定义了一个名为worker
的函数,它模拟了一个工作任务。这个函数接收一个jobs
的单向Channel用于接收工作任务,以及一个results
的单向Channel用于发送工作结果。当函数接收到一个工作任务时,它会等待一秒钟,然后将工作结果发送到results
的Channel中。
在main
函数中,我们创建了两个Channel:一个jobs
的Channel用于发送工作任务,一个results
的Channel用于接收工作结果。然后,我们启动了三个Goroutine,并将它们分别分配给worker
函数。接下来,我们向jobs
的Channel中发送了9个工作任务,并关闭了这个Channel。最后,我们从results
的Channel中接收了9个工作结果。
在这个示例程序中,我们使用Channel实现了工作任务的分配和工作结果的收集。通过使用Channel,我们可以轻松地实现Goroutine之间的通信和同步,从而使程序变得简单和高效。
关键词:
相关阅读
-
go的数据类型-其他数据类型-channel(二...
以下是一个使用Channel的示例程序,该程序创建了两个Goroutine,并... -
兴庆说节气|“非遗之上·寻味生活”兴...
兴庆说节气|“非遗之上·寻味生活”兴庆区举办谷雨非遗饮食文化会 -
天天最资讯丨云溪区人社局:服务企业“...
云溪区人社局:服务企业“面对面”听需问计解难题 -
Python面向对象编程-生成器
在Python中,生成器(Generator)是一种特殊的迭代器,可以通过函数... -
海南发展银行倒闭的原因主要有哪些?海...
海南发展银行倒闭的原因主要有哪些?海南发展银行倒闭的原因有三个:... -
余额宝转入转出要手续费吗?转入余额宝...
余额宝转入转出要手续费吗?不需要。从银行卡中转入到余额宝中的资金... -
余额宝转入限额是多少?9万元余额宝可以...
余额宝转入限额是多少?余额宝中的全部货币基金都没转账限额,但转账... -
其他应收款是什么意思?其他应收款借方...
其他应收款是什么意思?其他应收款是指企业除买入返售金融资产、应收... -
岳池站铁路春运客运组织及策略研究_岳池站
1、广安南动车票到成都东。2、岳池站可以上车。3、没有问题。本文分... -
其他应收款包括哪些?其他应收款的款项...
其他应收款包括哪些?①应收的各种赔款、罚款。如因职工失职造成一定... -
退回的个税手续费需要缴纳增值税吗?个...
退回的个税手续费需要缴纳增值税吗?对于企业来说,即使再小金额的涉... -
个调税是什么意思?退回的个税手续费计...
个调税是什么意思?个调税的全称是个人收入调节税,是对在中国国内有... -
世界百事通!官宣!北京车展将于明年4月...
4月21日,北京国际汽车展览会秘书处发布公告宣布,2024(第十八届)... -
网贷申请被拒有什么影响?网贷逾期征信...
网贷申请被拒有什么影响?1、影响个人综合信用评分:用户的征信报告... -
iHerb正推出春季焕新海外购活动,高能钜...
春天来临,iHerb又有钜惠大放送!春季焕新海外购活动正火热开展,只... -
养了三个月征信网贷还是被拒怎么办?网...
养了三个月征信网贷还是被拒怎么办?1、继续养征信如果只是因为征信... -
退休人员小额贷款平台有哪些?小额贷款...
退休人员小额贷款平台有哪些?1、蚂蚁借呗蚂蚁消费金融旗下的小额贷... -
每日金选|燕京啤酒一季度净利同比大增超...
戴维医疗公布2023年一季度报告,报告期公司实现营业收入1 58亿元,... -
年报披露翌日,乐歌股份股价涨超6%
?乐居财经吴文婷4月21日,截至发稿时,乐歌股份报19 53元,涨6 78... -
每日视讯:每天捏鼻头会让鼻头变小吗?
1不会让鼻头变小。2捏鼻头只是暂时性的改变鼻头形状,不会对鼻子的...