我在使用time.Tick. 我希望这段代码打印“嗨”10 次,然后在 1 秒后退出,但它挂起:
ticker := time.NewTicker(100 * time.Millisecond)
time.AfterFunc(time.Second, func () {
ticker.Stop()
})
for _ = range ticker.C {
go fmt.Println("hi")
}
https://play.golang.org/p/1p6-ViSvma
查看源代码,我看到Stop()调用时通道没有关闭。在这种情况下,迭代代码通道的惯用方法是什么?
婷婷同学_
杨魅力
相关分类