golang的Timer定時器
摘要:// code_047_Timer project main.go
package main
import (
"fmt"
"time"
)
func main() {
timer1 := time.NewTimer(time.Second...
// code_047_Timer project main.go package main import ( "fmt" "time" ) func main() { timer1 := time.NewTimer(time.Second * 2) t1 := time.Now() fmt.Printf("t1:%v\n", t1) t2 := <-timer1.C fmt.Printf("t2:%v\n", t2) //如果只是想單純的等待的話,可以使用 time.Sleep 來實現 timer2 := time.NewTimer(time.Second * 2) <-timer2.C fmt.Println("2s後") time.Sleep(time.Second * 2) fmt.Println("再一次2s後") <-time.After(time.Second * 2) //time.After函式的返回值是chan Time fmt.Println("再再一次2s後") timer3 := time.NewTimer(time.Second) go func() { <-timer3.C fmt.Println("Timer 3 expired") }() stop := timer3.Stop() //停止定時器 ////阻止timer事件發生,當該函式執行後,timer計時器停止,相應的事件不再執行 if stop { fmt.Println("Timer 3 stopped") } fmt.Println("before") timer4 := time.NewTimer(time.Second * 5) //原來設定5s timer4.Reset(time.Second * 1)//重新設定時間,即修改NewTimer的時間 <-timer4.C fmt.Println("after") }