Timer是指定時間后執行
import ( "time" ) func main() { //創建一個定時器設置1秒后執行 timer := time.NewTimer(time.Second) //阻塞線程一秒 <-timer.C fmt.Println("timer1") //直接阻塞線程2秒 <-time.After(2 * time.Second) //重新設置為3秒鍾 timer.Reset(3*time.Second) //停止定時器 timer.Stop() }
Ticker是按設置時間周期循環執行
import ( "fmt" "time" ) func main() { ticker := time.NewTicker(time.Second) i := 0 for { <-ticker.C i++ fmt.Println("i=", i) if i == 5 { ticker.Stop() break } } }