我安排使用hangfire.io库的作业,我可以观察到正在处理内置仪表板。但是,我的系统要求可以从仪表板取消作业。取消与Hangfire.io预定运行的作业
有一个选项可以删除正在运行的作业,但这只会改变数据库中作业的状态,并不会停止运行作业。
我在文档中看到有选项可以通过IJobCancellationToken
但是据我了解,它被用来在整个服务器关闭时正确地停止工作。
有没有办法实现已经运行的任务的程序化取消?
我是否应该编写自己的组件来定期拉取数据库并检查当前服务器实例是否正在运行已取消的作业?例如,维护字典jobId - > CancellationTokenSource,然后使用适当的令牌源消除信号。
嗨你有没有找到如何取消删除作业时,该工作/删除排队或正在运行的任务>? – 2015-04-22 10:11:42
要以编程方式取消作业,请调用'BackgroundJob.Delete'。请参阅:http://discuss.hangfire.io/t/cancel-a-running-job/603 – Dejan 2015-05-13 14:40:47
@Dejan - 谢谢 – 2015-05-18 21:28:00