定时循环如何工作?

时间:2017-05-01 15:09:24

标签: go

我正在学习golang,我刚刚了解了定时循环。但我不明白它是如何运作的?

for _ = range time.Tick(time.Second * 3) {
    fmt.Println("Ticking every 3 seconds")
}

1 个答案:

答案 0 :(得分:6)

Tick会返回一个<-chan Time频道,并且在Go中循环使用range的频道,就像在数组或地图上循环一样,可以。循环遍历某个通道时,循环内的代码将在该通道的每个recieve上执行,在您的示例中,该通道每3秒发生一次。该通道关闭后,循环终止。

https://tour.golang.org/concurrency/4