【Golang】定时任务Cron指南-毫秒级任务支持
package main
import (
"fmt"
"time"
"github.com/robfig/cron/v3"
)
func main() {
// 创建一个Cron调度器
c := cron.New(cron.WithSeconds())
// 添加一个任务,每秒执行一次
_, err := c.AddFunc("@secondly", func() {
fmt.Println("每秒执行任务:", time.Now().Format(time.RFC3339))
})
if err != nil {
fmt.Println("添加任务失败:", err)
return
}
// 启动Cron调度器
c.Start()
// 阻塞主线程,等待程序结束(例如,通过Ctrl+C手动终止)
select {}
}
这段代码演示了如何使用github.com/robfig/cron/v3
包创建一个Cron调度器,并添加一个每秒执行一次的任务。它使用了cron.WithSeconds()
选项来确保Cron能够以秒级准确度执行任务。代码中的c.AddFunc
用于添加一个按指定时间计划执行的函数。最后,调用c.Start()
来启动Cron,并通过一个无限循环阻塞主线程,以保持程序的运行状态。
评论已关闭