2015-06-11 84 views
13

我試圖使用Hangfire在後臺輪詢來自另一個網站的數據運行重複作業,問題是如果上一個作業仍在運行,我不希望重複作業運行。Hangfire單實例重複作業

我已閱讀文檔,但似乎無法找到答案。有沒有辦法讓每10分鐘運行一次的循環作業,但如果以前的任務還沒有完成,就會跳過?

public void Configuration(IAppBuilder app) 
{ 
    app.MapSignalR(); 

    // Hangfire 
    GlobalConfiguration.Configuration 
     .UseSqlServerStorage("DatabaseContext"); 

    app.UseHangfireDashboard(); 
    app.UseHangfireServer(); 

    RecurringJob.AddOrUpdate("site-parser",() => SiteParserService.RunAll(), Cron.Minutely, TimeZoneInfo.Utc); 

    ConfigureAuth(app); 
} 
+0

你的意思是相同的重複任務的最後執行? –

回答

0

這是一個建議:簡單地將作業作爲單個實例排隊。然後,如果作業成功完成,則執行作業中的最後一步。您的工作的最後一步將排隊工作在10分鐘內再次執行。

這不會爲您提供所需的功能嗎?

相關問題