Open hd2y opened 2 years ago
获取任务计划执行时间,count 指定次数:
count
IEnumerable<DateTimeOffset> GetTaskNextRunDateTime(int count);
增加抽象类用于获取下次执行时间:
public abstract class TaskRunner { public TaskRunner(string expression) { Expression = expression; } public string Expression { get; } public abstract DateTimeOffset? GetTaskNextRunDateTime(DateTimeOffset? dateTime); }
增加对应创建任务的方法:
string AddTask(string topic, string body, TaskRunner runner)
使用者可以自己实现一个基于 Cron 表达式的版本:
推荐引用 Cronos
public class CronTaskRunner : TaskRunner { public CronTaskRunner(string expression) : base(expression) { } public override DateTimeOffset? GetTaskNextRunDateTime(DateTimeOffset? dateTime) { CronExpression expression = CronExpression.Parse(Expression); DateTimeOffset? next = expression.GetNextOccurrence(DateTimeOffset.Now, TimeZoneInfo.Local); return next; } }
增加获取任务后续执行时间
获取任务计划执行时间,
count
指定次数:增加自定义执行时间
增加抽象类用于获取下次执行时间:
增加对应创建任务的方法:
使用者可以自己实现一个基于 Cron 表达式的版本: