2011-09-14 16 views
0

私は同じタスクを2回実行します.1回は30分後、もう1回は120分後に実行します。遅延ジョブの構文

私は今、それをこのように書いていますが、私は

その周り
def postpone_30_min 
    // same task 
    end 
    handle_asynchronously :postpone_30_min, :run_at => Proc.new { 30.minutes.from_now } 


    def postpone_120_min 
    // same task 
    end 
    handle_asynchronously :postpone_120_min, :run_at => Proc.new { 1200.minutes.from_now } 

答えて

4

より良い方法は、(あなたがDJの最新バージョンを使用していると仮定して)これを試してみてくださいがあると確信しています:

class Foo 
    after_create :schedule_reminder  

    def send_reminder 
    end 

private: 

    def schedule_reminder 
    delay(:run_at => 30.minutes.from_now).send_reminder 
    delay(:run_at => 2.hours.from_now).send_reminder 
    end  
end 
+0

あなたはhandle_asyn ...行でそれを行う方法を知っていますか? – baash05

関連する問題