Asp.net 使用FluentScheduler

RookieBoy666發表於2024-11-01

1.安裝包:

Install-Package FluentScheduler

2. Global.asax新增

   JobManager.Initialize(new MyRegister());

3.新增類

Asp.net 使用FluentScheduler
    public class MyRegister : Registry
    {
        public MyRegister()
        {
            // Schedule an IJob to run at an interval
            // 立即執行每兩秒一次的計劃任務。(指定一個時間間隔執行,根據自己需求,可以是秒、分、時、天、月、年等。)
            Schedule<MyJob>().ToRunNow().AndEvery(2).Seconds();

            // Schedule an IJob to run once, delayed by a specific time interval
            // 延遲一個指定時間間隔執行一次計劃任務。(當然,這個間隔依然可以是秒、分、時、天、月、年等。)
            //Schedule<MyJob>().ToRunOnceIn(5).Seconds();

            //// Schedule a simple job to run at a specific time
            //// 在一個指定時間執行計劃任務(最常用。這裡是在每天的下午 1:10 分執行)
            //Schedule(() => Trace.WriteLine("It's 1:10 PM now.")).ToRunEvery(1).Days().At(13, 10);

            //Schedule(() =>
            //{

            //    // 做你想做的事兒。
            //    Trace.WriteLine("It's 1:10 PM now.");

            //}).ToRunEvery(1).Days().At(13, 10);

            //// Schedule a more complex action to run immediately and on an monthly interval
            //// 立即執行一個在每月的星期一 3:00 的計劃任務(可以看出來這個一個比較複雜點的時間,它意思是它也能做到!)
            //Schedule<MyComplexJob>().ToRunNow().AndEvery(1).Months().OnTheFirst(DayOfWeek.Monday).At(3, 0);

            //// Schedule multiple jobs to be run in a single schedule
            //// 在同一個計劃中執行兩個(多個)任務
            //Schedule<MyJob>().AndThen<MyOtherJob>().ToRunNow().AndEvery(5).Minutes();
        }

    }

    public class MyJob : IJob
    {

        void IJob.Execute()
        {
            Trace.WriteLine("現在時間是:" + DateTime.Now);
        }
    }

    public class MyOtherJob : IJob
    {

        void IJob.Execute()
        {
            Trace.WriteLine("這是另一個 Job ,現在時間是:" + DateTime.Now);
        }
    }

    public class MyComplexJob : IJob
    {

        void IJob.Execute()
        {
            Trace.WriteLine("這是比較複雜的 Job ,現在時間是:" + DateTime.Now);
        }
    }
View Code

相關文章