golang的Timer定时器

匿名 (未验证) 提交于 2019-12-02 22:56:40
// 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") } 
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!