33、Timer(定时器)
00 分钟
2022-8-26
我们经常需要在未来的某个时间点运行Go代码,或者每隔一定时间重复运行代码。Go内置的定时器和打点器特性让这些变得很简单。我们会先学习定时器,然后再学习打点器。
 
 
 
 
 
 
定时器表示在未来某一时刻的独立事件。你告诉定时器需要等待的时间,然后它将提供一个用于通知的通道。这里的定时器将等待2秒。
 
←timer1.C 会一直阻塞,知道定时器的通道C明确的发送了定时器失效的值。
 
如果你需要的仅仅是单纯的等待,使用time.Sleep就够了。使用定时器的原因之一就是,你可以在定时器触发之前将其去掉。例如这样
 
 
 
给timer2足够的时间来触发它,以证明它实际上已经停止了。
 
 
第一个定时器将在程序开始后大约2s触发,但是第二个定时器还未触发就停止了
 
 

评论