【发布时间】:2014-10-25 07:09:36
【问题描述】:
我使用救援 gem 来管理我的后台作业,
我想在创建新的后台作业后获取句柄 id,
然后我可以随时使用句柄 id 终止后台作业。
但我无法通过 resque 获取它,似乎无法删除任何排队的作业或正在运行的作业,
我知道 sidekiq 有删除排队作业的方法
【问题讨论】:
标签: ruby-on-rails resque sidekiq
我使用救援 gem 来管理我的后台作业,
我想在创建新的后台作业后获取句柄 id,
然后我可以随时使用句柄 id 终止后台作业。
但我无法通过 resque 获取它,似乎无法删除任何排队的作业或正在运行的作业,
我知道 sidekiq 有删除排队作业的方法
【问题讨论】:
标签: ruby-on-rails resque sidekiq
如果需要,您可以使用ResqueStatus gem 来跟踪作业并使用 id 将其删除。
以下是 gem Docs 中给出的示例:
您的工作类别:
class SleepJob
include Resque::Plugins::Status
def perform
# your code
...
...
end
end
将作业排入队列并获取作业 ID:
job_id = SleepJob.create(args)
使用作业 ID 终止作业:
Resque::Plugins::Status::Hash.kill(job_id)
阅读更多Github
【讨论】: