答案 0 :(得分:1)
在我查看了雇佣源之后,我找到了解决方法。我的问题是在作业队列中有一个锁定的作业。因此,delayed_job.working结果为1而不是0.此外,由于锁定的作业,delayed_job.jobs也是1.因此没有雇用工人。我从队列中清除了所有工作,然后雇佣工作就像一个魅力。
def hirefire_hire
delayed_job = ::Delayed::Job.new
if delayed_job.working == 0 \
or delayed_job.jobs == 1
environment.hire
end
end
我认为应该修改此检查以检查未锁定的作业数量或类似性质的作业。