cron v3和cron v1的定时器示例:
1)以下适用于cron v3的写法:
安装依赖:go get github.com/robfig/cron/v3
import (
"github.com/robfig/cron/v3"
"log"
)
核心代码:
在你的函数里加入如下代码:
go func() {
// timeout示例,写法v1的相同:
// 每12s运行一次:"@every 12s" 或 "*/12 * * * * *"
// 每分钟的第0s执行一次:"0 */1 * * * *"
num := 0 // 运行次数
// 设置时区
local, _ := time.LoadLocation("Asia/Shanghai")
interval := cron.New(cron.WithLocation(local), cron.WithSeconds()) // 设置时区并且精度按秒。
timeout := "0 */1 * * * *"
intervalId, err := interval.AddFunc(timeout, func() {
num++
log.Println("全局定时器已开启=num=", num)
})
if err != nil{
log.Println("全局定时器报错", "\n error=", err, "\n num=", num)
return
}
log.Println("全局定时器已开启,Id=", inter