登录
首页 >  Golang >  Go问答

如何临时安排多个 cron 工作流程?

来源:stackoverflow

时间:2024-04-13 23:27:25 386浏览 收藏

从现在开始,我们要努力学习啦!今天我给大家带来《如何临时安排多个 cron 工作流程?》,感兴趣的朋友请继续看下去吧!下文中的内容我们主要会涉及到等等知识点,如果在阅读本文过程中有遇到不清楚的地方,欢迎留言呀!我们一起讨论,一起学习!

问题内容

考虑将字符串数组作为输入,我的目标是为每个字符串安排 cron 作业。我尝试为每次输入迭代创建自定义工作流程选项并执行相同的工作流程选项。在此之后,只有第一个 cron 工作流程被安排,而其他 cron 作业则无限期地等待。

for ind , sid := range ss_ids {
        var cronScheduleStr string
        if ind == 0 {
            cronScheduleStr = "* * * * *"
        }
        if ind == 1 {
            cronScheduleStr = "2 * * * *"
        }
        workflowID := "cron_" + sid
        workflowOptions := client.StartWorkflowOptions{
            ID:           workflowID,
            TaskQueue:    "cron",
            CronSchedule: cronScheduleStr,
        }

        we, err := c.ExecuteWorkflow(context.Background(), workflowOptions, cron.SampleCronWorkflow,sid)
        if err != nil {
            log.Fatalln("Unable to execute workflow", err)
        }
        log.Println("Started workflow", "WorkflowID", we.GetID(), "RunID", we.GetRunID())
    }

除此之外,我还以相同的方式尝试了子工作流程,但这也仅安排第一个 cron 子工作流程。如果有人能帮忙,那就太好了。


正确答案


如果 ss_ids 是唯一的,第一个应该每分钟运行一次,第二个应该在每小时的第二分钟运行,其余的将有 CronSchedule: ''

以上就是《如何临时安排多个 cron 工作流程?》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>