首頁 >後端開發 >Golang >go語言實作定時器的方法是什麼

go語言實作定時器的方法是什麼

王林
王林原創
2021-02-04 16:31:562558瀏覽

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