Go整合cron实现定时任务

下载设备:

go get github.com/robfig/cron

V3设备(适用于Go 1.11及更高版本):

go get github.com/robfig/cron/v3@v3.0.0

代码:

package mainimport ( "fmt" "github.com/robfig/cron/v3" "time")func main() { methodB()}func methodA() { c := cron.New(cron.WithSeconds()) //准确到秒级,V3版本以后供应的 //定时义务 spec := "*/1 * * * * ?" //cron剖明式,每一秒一次 c.AddFunc(spec, func() { fmt.Println("methodA 每一秒一次...") }) c.Start() select {} //梗塞主线程中行}func methodB() { c := cron.New() //定时义务 spec := "*/1 * * * * ?" //cron剖明式,每一秒一次 c.AddFunc(spec, func() { fmt.Println("methodA 每一秒一次...") time.Sleep(time.Second*5) c.Stop()//中行义务 }) c.Start() select { }}func methodC() { fmt.Println("methodC 定时义务C")}func methodE() { fmt.Println("methodC 定时义务C")}func methodD() { c := cron.New() //定时义务 spec := "*/1 * * * * ?" //cron剖明式,每一秒一次 c.AddFunc(spec, methodE) c.AddFunc(spec, methodC) c.Start() select {} //梗塞主线程中行}

常用的cron字符串:

您可以还会对下面的文章感兴趣:

暂无相关文章

最新评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。