继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

go语言里比较好用的计划任务调度模块

holdtom
关注TA
已关注
手记 1885
粉丝 240
获赞 992


   大部分人使用的可能都是github.com/robfig/写的cron模块,但是这个模块里只有动态添加任务,却没有动态删除任务的func, 所以经过一番查找,发现了一个比较好的cron模块:https://github.com/jakecoffman/cron

这个模块虽然fork的人比较少但是个人认为还是不错的,他基本是robfig写的cron的改良,把任务的结构体里增加了name string字段,这就让所有任务都有了一个唯一标示,借助他的RemoveJob function可以轻松根据唯一标示动态删除计划任务。

    废话少说直接上实例:

package main 

import(

    "github.com/jakecoffman/cron"

    "time"

    "niehaha"

)

func main() {

c:= cron.New()

c.Start()  //启动cron

c.AddFunc("0 * * * * *",func(){fmt.Println("niehaha"))},"IAmUniqueName")//增加一个计划任务,其中 spec->“0 * * * * *” 如同linux的crontab一样 分别对应“秒 分 时 日 月 周” 

for{

time.Sleep(120*time.Second)

}

}

©著作权归作者所有:来自51CTO博客作者luckykris的原创作品,如需转载,请注明出处,否则将追究法律责任


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP