美文网首页开发组件
组件分享之后端组件——任务管理组件包cron

组件分享之后端组件——任务管理组件包cron

作者: cn華少 | 来源:发表于2022-01-28 21:35 被阅读0次

    组件分享之后端组件——任务管理组件包cron

    背景

    近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。

    组件基本信息

    内容

    在我们日常使用Linux时,进行制作一些定时启动或定时执行脚本时经常使用到crontab命令,而在Golang开发时我们想要制作定时任务时需要使用什么呢?这里就提到了一个开源包cron,小伙伴们可以把它理解为golang中的crontab,详细使用方式请查看下方:

    安装

    go get github.com/robfig/cron/v3
    

    测试用例

    import (
        "fmt"
        "github.com/robfig/cron/v3"
    )
    
    func main() {
        c := cron.New()
        c.AddFunc("0 30 * * * *", func() { fmt.Println("Every hour on the half hour") })
        c.AddFunc("@hourly",      func() { fmt.Println("Every hour") })
        c.AddFunc("@every 1h30m", func() { fmt.Println("Every hour thirty") })
        c.Start()
        ..
        // 函数在它们自己的goroutine中异步调用。
        ...
        // funs也可以添加到正在运行的Cron中
        c.AddFunc("@daily", func() { fmt.Println("Every day") })
        ..
        // 检查cron作业条目的下一个和上一个运行时。
        inspect(c.Entries())
        ..
        c.Stop()  // 停止调度程序(不会停止任何已经运行的作业)。
    }
    
    本文声明:
    88x31.png
    知识共享许可协议
    本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。

    相关文章

      网友评论

        本文标题:组件分享之后端组件——任务管理组件包cron

        本文链接:https://www.haomeiwen.com/subject/jljnhrtx.html