Go的cron定时库差异
1、github.com/robfig/cron
star最多的,使用crontab格式配置定时任务,也可通过关键字进行配置(对我来说稍显复杂),例如:
func main() {
c := cron.New()
c.AddJob("@every 1s", GreetingJob{"dj"})
c.Start()
time.Sleep(5 * time.Second)
}
2、github.com/go-co-op/gocron
用法与3极其相似,改系统时间方式不能触发定时任务,超过day的任务自测比较耗时,定时任务执行正常
gocron.NewScheduler(time.UTC) 新建对象时可以配置本地时间或UTC时间,3需要格外配置
3、github.com/jasonlvhit/gocron
用法与2极其相似,改系统时间方式可以触发定时任务
以上库均支持crontab格式配置定时任务: