.net任務(wù)調(diào)度框架FluentScheduler簡介
之前我在文章中介紹過.net中的任務(wù)調(diào)度框架Hangfire,HangFire雖然本身輸入比較簡單好用的,但是,如果我們的程序本身提供的服務(wù)不是任務(wù)調(diào)度,而任務(wù)調(diào)度只是里面并不重要的小功能的時候,用HangFire顯得有點過重了,這里本文就介紹一個簡單好用的任務(wù)調(diào)度框架FluentScheduler。
比起Hangfire來,F(xiàn)luentScheduler相對就簡單得多,它只是提供了一個類庫,提供任務(wù)調(diào)度的基本功能,沒有像hangfire的數(shù)據(jù)庫,web服務(wù)的依賴,功能變少,也更加簡單了。非常適用于任務(wù)調(diào)度功能的集成。
它使用也比較簡單,一個簡單的示例如下:
static void Main(string[] args) { JobManager.Initialize(new MyRegistry()); Console.ReadLine(); } public class MyRegistry : Registry { public MyRegistry() { // Schedule an IJob to run at an interval // 立即執(zhí)行每10秒一次的計劃任務(wù)。(指定一個時間間隔運行,根據(jù)自己需求,可以是秒、分、時、天、月、年等。) Schedule(() => Console.WriteLine(DateTime.Now)) .ToRunNow().AndEvery(10).Seconds(); // 立即執(zhí)行每10秒一次的計劃任務(wù)。如果本次任務(wù)沒有結(jié)束,下一次的任務(wù)則不會開始,禁止并行運行 Schedule(() => Console.WriteLine(DateTime.Now)) .NonReentrant() .ToRunNow().AndEvery(10).Seconds(); //在每天的21:15執(zhí)行計劃任務(wù) Schedule(() => Console.WriteLine("It's 9:15 PM now.")) .ToRunEvery(1).Days().At(21, 15); // 立即執(zhí)行一個在每月的第一個星期一 3:00 的計劃任務(wù) Schedule(() => Console.WriteLine("It's 3:00 AM now.")) .ToRunNow().AndEvery(1).Months().OnTheFirst(DayOfWeek.Monday).At(3, 0); //在每周一的21:15執(zhí)行計劃任務(wù) Schedule(() => Console.WriteLine("It's 9:15 PM now.")) .ToRunEvery(1).Weeks().On(DayOfWeek.Monday).At(21, 15); } }
基本的功能還是都有的,沒有依賴項,也適用于各種.net框架,非常好用。
到此這篇關(guān)于.net任務(wù)調(diào)度框架FluentScheduler的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳細(xì)說明asp.net中datareader 和 dataset 的區(qū)別
asp.net中datareader 和 dataset的區(qū)別主要是在獲取數(shù)據(jù)的機(jī)制和獲取數(shù)據(jù)的方式方面,下面我們來看教程2013-08-08獲取轉(zhuǎn)向地址的URL的源文件(可自定義REFER)
獲取轉(zhuǎn)向地址的URL的源文件(可自定義REFER)...2006-09-09ajaxToolkit:CalendarExtender演示與實現(xiàn)代碼
Ajax的CalenderExtender的日期選擇實現(xiàn)介紹,感興趣的你可以了解下,就當(dāng)是鞏固知識,希望本文對你有所幫助2013-01-01