跳转至

001 定期执行

定期执行

之前多数时候写的是 C/C++ Python 这两个语言,它们的定期执行写法上都差不多,都是 sleep(x) 一下。也就是说我以前基本是这样写。

package main

import (
    "fmt"
    "time"
)

func main() {
    for {
        // 每次 sleep 一秒
        fmt.Printf("now : %s \n", time.Now())
        time.Sleep(1 * time.Second)
    }
}


新发现

最近在 github 上看一些第三方项目,它们都写法也比较有意思,这里记录下。

package main

import (
    "fmt"
    "time"
)

func main() {
    ticker := time.NewTicker(time.Duration(1) * time.Second)
    for now := range ticker.C {
        fmt.Printf("now : %s \n", now)
    }
}