hangfire 的一次性工作
One-off job with hangfire
如何使用 hangfire 运行 一次性完成工作?
看起来 CRON 语法不支持 "run at startup and never again" 类型的东西。
我不想提出固定的 CRON 日期(例如 2019-02-28T15:12),因为这在多个环境中都行不通。
有什么办法吗?
不要使用循环作业,而是在应用程序启动时将您的作业加入队列。
BackgroundJob.Enqueue(() => Console.WriteLine("Hello, world!"));
火是一次性的工作。
我会在 hangfire 之后添加这个
config at startup
我们最终得到的是一个永远不会运行的作业,但可以通过 Hangfire 触发 UI。
所以像这样:
RecurringJob.AddOrUpdate<SomeType>("name", service => service.Run(), NEVER);
对于 NEVER
,我们使用 Hangfire 的 Cron.Never()
实现。看起来它使用 Each 31st of February
作为 cron 表达式。有关 their Github.
的更多信息
如何使用 hangfire 运行 一次性完成工作?
看起来 CRON 语法不支持 "run at startup and never again" 类型的东西。
我不想提出固定的 CRON 日期(例如 2019-02-28T15:12),因为这在多个环境中都行不通。
有什么办法吗?
不要使用循环作业,而是在应用程序启动时将您的作业加入队列。
BackgroundJob.Enqueue(() => Console.WriteLine("Hello, world!")); 火是一次性的工作。 我会在 hangfire 之后添加这个 config at startup
我们最终得到的是一个永远不会运行的作业,但可以通过 Hangfire 触发 UI。
所以像这样:
RecurringJob.AddOrUpdate<SomeType>("name", service => service.Run(), NEVER);
对于 NEVER
,我们使用 Hangfire 的 Cron.Never()
实现。看起来它使用 Each 31st of February
作为 cron 表达式。有关 their Github.