【问题标题】:A job must execute each monday. Monday was a holiday, so must execute tuesday. How do this?作业必须在每个星期一执行。星期一是假期,所以必须执行星期二。这是怎么做的?
【发布时间】:2012-06-20 05:48:56
【问题描述】:

我有一个必须在每个星期一执行的工作。这项工作在家庭办公室的服务器中运行。人们从早上 8 点到下午 6 点在这里工作。其余时间计算机处于关闭状态。

这用 CRON 表示:

0 0 12 ? * MON *

这是时间表:

1.  Monday, June 25, 2012 12:00 PM
2.  Monday, July 2, 2012 12:00 PM
3.  Monday, July 9, 2012 12:00 PM
4.  Monday, July 16, 2012 12:00 PM
5.  Monday, July 23, 2012 12:00 PM

但是,6 月 25 日是假期。我需要确保作业在星期二上午 8:00(服务器唤醒时)执行。

这很重要,因为当天运行的其他任务取决于第一个任务的发生。另外,结果会被上传到远程服务器,需要等到下周才能得到结果。

执行此操作的软件位于 .NET 中,并使用带有 CRON 的quartz.net 来表达执行。

所以我想知道如何在没有用户干预的情况下可靠地解决这个问题。我很难有一个清单或提前登录,我在其中标记预期任务是否发生,但无法用计算机术语表达如何做到这一点。

【问题讨论】:

    标签: .net quartz-scheduler crontab


    【解决方案1】:

    显然你必须有一些数据文件,(或者可能是一些确定的算法)可以告诉你何时运行你的应用程序。

    要么手动编写,要么从某个地方查询。

    这样做后,只需将当前日期与您创建的日期列表进行比较。 如果今天的日期在列表中,并且您尚未将应用标记为已运行,请立即运行。

    祝你有美好的一天。

    【讨论】:

      猜你喜欢
      • 2015-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多