2015-01-10 14 views
25

私はHangfireを使用していて、ソフトウェアのようなものです!しかし、欠けていることの1つは、数分ごとに(たとえば15分ごとに)実行される定期的なジョブを追加する方法です。これを達成する方法はありますか?Hangfireで15分ごとに実行されているcronジョブを設定する

+1

あなたはcronの式を生成するには、この(http://www.cronmaker.com/)を使用することができます。そして、(受け入れられた答えに従って)あなたはRecurringJob.AddOrUpdate(()=> Console.Write( "Recurring")、cronText)を呼び出すことができます。 –

答えて

44

現在、私はこのアプローチを使用しています。 Hangfireフォーラムでの私の質問に

参考:http://discuss.hangfire.io/t/how-to-create-cron-job-that-is-executing-every-15-minutes/533

+2

ソリューションを共有してくれてありがとう。 Hangfireがそれらのcron表現を受け入れたのを知らなかった。 – Jerry

+1

30分間= "*/30 * * *"? – Ricardo

+1

はい、 '*/30 * * * 'は' 30分ごと 'になります –

3

Hangfire.Cronクラスを見ると、可能かどうかわかりません。

この問題を回避するには、すなわち4つの異なるスケジュールを作成するには、次のようになります。

RecurringJob.AddOrUpdate(() => Console.Write("Recurring"), "*/15 * * * *"); 

と魅力のように働いている:

RecurringJob.AddOrUpdate(
    () => Console.WriteLine("Transparent!"), 
    Cron.Hourly(0)); 

RecurringJob.AddOrUpdate(
    () => Console.WriteLine("Transparent!"), 
    Cron.Hourly(15)); 

RecurringJob.AddOrUpdate(
    () => Console.WriteLine("Transparent!"), 
    Cron.Hourly(30)); 

RecurringJob.AddOrUpdate(
    () => Console.WriteLine("Transparent!"), 
    Cron.Hourly(45)); 
関連する問題