我正在学习golang,我刚刚了解了定时循环。但我不明白它是如何运作的?
for _ = range time.Tick(time.Second * 3) {
fmt.Println("Ticking every 3 seconds")
}
答案 0 :(得分:6)
Tick会返回一个<-chan Time
频道,并且在Go中循环使用range
的频道,就像在数组或地图上循环一样,可以。循环遍历某个通道时,循环内的代码将在该通道的每个recieve
上执行,在您的示例中,该通道每3秒发生一次。该通道关闭后,循环终止。