新手想请教一个协程批处理任务的问题

jayxtt999 · · 1833 次点击
解决办法:将 ResData = append(ResData,<- ch)操作放到for循环外。 原因:ch是无缓存的cahnnel,所以 <- ch操作会阻塞,直到ch中有数据才会执行,所以ResData = append(ResData,<- ch)会阻塞for循环,既这里的go do()并没有实现真正的并发执行,实际是串行执行操作
#6
更多评论
```go ch<-item ResData = append(ResData,<- ch) ``` 这是个无缓存的chan,必须发送/接受结束才会下一步。 可以带个缓存试试。若要存储执行结果,可以用sync.map。
#1
绝大部分时间在数据库查询上
#2