我需要添加一個在后臺運行的作業,我可以通過MyJob.perform_later(args).
但是在安排之前我需要一些等待時間,比如 1 分鐘。
所以如果我安排作業,它應該在 1 分鐘后排隊。
我能想到的一種解決方法是為我的作業增加睡眠。例如:
class MyJob < ApplicationJob
def perform(args)
sleep 1.minute
code
more code
more code
end
end
它立即排隊但在執行中休眠(不是我正在尋找的)。應該有更好的方法來實作這一點。
uj5u.com熱心網友回復:
好吧,你可以設定一個等待選項,比如
MyJob.set(wait: 1.minute).perform_later
通過設定等待,作業將在 1 分鐘后入隊。
參考:https : //guides.rubyonrails.org/v4.2/active_job_basics.html#enqueue-the-job
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/375562.html
