日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

.net任務(wù)調(diào)度框架FluentScheduler簡介_實(shí)用技巧

作者:天方 ? 更新時(shí)間: 2022-08-26 編程語言

之前我在文章中介紹過.net中的任務(wù)調(diào)度框架Hangfire,HangFire雖然本身輸入比較簡單好用的,但是,如果我們的程序本身提供的服務(wù)不是任務(wù)調(diào)度,而任務(wù)調(diào)度只是里面并不重要的小功能的時(shí)候,用HangFire顯得有點(diǎn)過重了,這里本文就介紹一個(gè)簡單好用的任務(wù)調(diào)度框架FluentScheduler。

比起Hangfire來,F(xiàn)luentScheduler相對(duì)就簡單得多,它只是提供了一個(gè)類庫,提供任務(wù)調(diào)度的基本功能,沒有像hangfire的數(shù)據(jù)庫,web服務(wù)的依賴,功能變少,也更加簡單了。非常適用于任務(wù)調(diào)度功能的集成。

它使用也比較簡單,一個(gè)簡單的示例如下:

        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秒一次的計(jì)劃任務(wù)。(指定一個(gè)時(shí)間間隔運(yùn)行,根據(jù)自己需求,可以是秒、分、時(shí)、天、月、年等。)
                Schedule(() => Console.WriteLine(DateTime.Now))
                   .ToRunNow().AndEvery(10).Seconds();

                // 立即執(zhí)行每10秒一次的計(jì)劃任務(wù)。如果本次任務(wù)沒有結(jié)束,下一次的任務(wù)則不會(huì)開始,禁止并行運(yùn)行
                Schedule(() => Console.WriteLine(DateTime.Now))
                   .NonReentrant()
                   .ToRunNow().AndEvery(10).Seconds();

                //在每天的21:15執(zhí)行計(jì)劃任務(wù)
                Schedule(() => Console.WriteLine("It's 9:15 PM now."))
                   .ToRunEvery(1).Days().At(21, 15);
                
                // 立即執(zhí)行一個(gè)在每月的第一個(gè)星期一 3:00 的計(jì)劃任務(wù)
                Schedule(() => Console.WriteLine("It's 3:00 AM now."))
                   .ToRunNow().AndEvery(1).Months().OnTheFirst(DayOfWeek.Monday).At(3, 0);
                
                //在每周一的21:15執(zhí)行計(jì)劃任務(wù)
                Schedule(() => Console.WriteLine("It's 9:15 PM now."))
                   .ToRunEvery(1).Weeks().On(DayOfWeek.Monday).At(21, 15);
            }
        }

基本的功能還是都有的,沒有依賴項(xiàng),也適用于各種.net框架,非常好用。

原文鏈接:https://www.cnblogs.com/TianFang/p/10277360.html

欄目分類
最近更新