[Go]固定工作池的应用
今天学长让帮忙爬个简单的图片,刚好熟悉下工作池的使用
总体思路借鉴自
《go核心编程》
(1)构建 taskChan 并发送到 taskChan 通道中。
(2)分别启动n个工作协程,不停地从 taskChan 通道中获取任务,然后将结果写入结果通道(我的这个不需要写入结果就省略了),如果任务通道被关闭,则负责向收敛结果的 goroutine 发送通知,告诉其当前 worker 已经完成工作(我这里使用waitGroup来通知)
(3) 收敛结果的 goroutine 接收到所有 taskChan 经处
原创
2021-10-21 14:57:01 ·
122 阅读 ·
0 评论