定时器与 Ticker

1. Timer(定时器)

用于在指定时间后执行操作:

timer := time.NewTimer(2 * time.Second)
<-timer.C
fmt.Println("Timer expired")

`

可以使用 Reset 重置定时器:

timer.Reset(3 * time.Second)

2. Ticker(周期定时器)

用于周期性触发事件:

ticker := time.NewTicker(1 * time.Second)
go func() {
    for t := range ticker.C {
        fmt.Println("Tick at", t)
    }
}()
time.Sleep(5 * time.Second)
ticker.Stop()

3. 应用场景

  • Timer:执行一次性延时任务
  • Ticker:实现周期任务,如心跳、定时检查

定时器和 Ticker 是实现时间控制的重要工具。