首页 >后端开发 >Golang >go语言实现定时器的方法是什么

go语言实现定时器的方法是什么

王林
王林原创
2021-02-04 16:31:562551浏览

go语言实现定时器的方法:可以通过time.sleep、time.after和time.Timer来实现定时器,如【time.Sleep(time.Second)】。

go语言实现定时器的方法是什么

本文操作环境:windows10系统、Go 1.11.2、thinkpad t480电脑。

一、定时器的创建

golang中定时器有三种实现方式,分别是time.sleep、time.after、time.Timer
其中time.after和time.Timer需要对通道进行释放才能达到定时的效果

package mainimport (    "fmt"
    "time")func main() {    /*
        用sleep实现定时器
    */
    fmt.Println(time.Now())
    time.Sleep(time.Second)
    fmt.Println(time.Now())    /*
        用timer实现定时器
    */
    timer := time.NewTimer(time.Second)
    fmt.Println(<-timer.C)    /*
        用after实现定时器
    */
    fmt.Println(<-time.After(time.Second))

}

二、定时器的重置与停止

重置定时器 timer.Reset(d Duration)
停止定时器 timer.Stop()
三、周期定时的实现Tiker

golang中使用Tiker可以实现周期定时的效果

package main

import (    "fmt"
    "time")

func main() {
    tiker := time.NewTicker(time.Second)    for i := 0; i < 3; i++ {
        fmt.Println(<-tiker.C)
    }
}

相关推荐:golang教程

以上是go语言实现定时器的方法是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn