我有类似crontab的调度程序。时间定义“m m hh wd md m”:
m m-分钟hh-小时wd-一周的天数md-月的天数m-月
WD、MD和M允许多个条目,每个PARAMs可以是空的,例如:
^ ^ 0, 1 ^ ^ means exucution every minute, every hour, at sunday and mondey, every day<br>
35 15 ^ ^ ^ execution every day at 15.35<br>
问题是,如果您知道上一个执行日期,如何计算下一个运行时间。我知道如何使用循环(只需添加1分钟,直到它符合条件),但必须有更好的方法。
最佳答案
我已经成功地将NCrontab用于此目的。
使用类似于
var schedule = CrontabSchedule.Parse("15 35 * * *");
return schedule.GetNextOccurrence(DateTime.Now);
关于c# - 在C#中计算Cron下一次运行时间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8121374/