【发布时间】:2016-06-23 20:50:25
【问题描述】:
我有一份工作,当工作运行时,在它的最底部,我想enqueue 相同的工作在 1 小时后再次运行,但参数不同。
到目前为止我所取得的成就:
class SimpleJob
@queue = :normal
def self.perform(start)
puts "Right now, start = #{start}"
start += 12
time = some_request_external_api
self.set(wait: time).perform_later(start)
end
end
我正在使用resque gem,并通过QUEUE=* rake resque:work 运行该作业。当然,它在开始时会打印Right now, start = 12,但在那之后,什么也没有发生。我究竟如何才能实现这个功能?
【问题讨论】:
标签: ruby-on-rails ruby resque rails-activejob