golang 新手请教下在协程中执行死循环任务并调度是否可以实现,没找到太多相关样例
|
loopljAug 27, 2020
1
什么意思,for{ // XXX} 不行吗。
|
|
2
|
|
3
|
|
loopljAug 27, 2020
4
可以多点上下文吧。再什么场景下,要做什么,达成什么样的效果。
|
|
lbp0200Aug 27, 2020
5
sync.waitgroup
|
|
chensanAug 27, 2020
6
不太理解楼主是要什么效果,但是 context 和楼上的 waitgroup 你可以了解下
|
|
7
前者可以实现轮询调度
https://paste.ubuntu.com/p/thsKMhWC2x/ 后者 gocv 不支持 https://paste.ubuntu.com/p/3F3wvYqGDM/ @ZSeptember @lbp0200 @chensan |
|
mengzhuoAug 27, 2020
8
这样?
ch := make(chan, int) go func() { for i:=0;i<10;i++{ ch<-i time.Sleep(i*500*time.Millisecond) } }() for { fmt.Print(<-ch) } |
|
lbp0200Aug 27, 2020
10
|
|
loopljAug 27, 2020
11
defer wg.Done() 加到第七行前面,wg.Done 应该要在 goroutine 结束后执行吧。
|
|
12
|
|
loopljAug 27, 2020
13
打个日志看看你真实代码传入的 url 列表?感觉运行的时候是个空列表?
|