關於自動執行,Quarz配置太麻煩,試了試FluentScheduler


Quarz的xml配置和程序集引用我覺得有點多,對於只需要執行一些簡單任務的小白簡直不能忍,無意間看到了這個FluentScheduler,於是動手試了試。

話不多說,直接上代碼:

using System;
using FluentScheduler;


namespace HpTest.Fluent
{
    public class Klass
    {
        public Klass()
        {
            JobManager.Initialize(new MyRegistry());
        }
    }
    public class MyRegistry : Registry
    {
        public MyRegistry()
        {
            // Schedule an ITask to run at an interval
            //Schedule<MyTask>().ToRunNow().AndEvery(2).Seconds();

            // Schedule an ITask to run once, delayed by a specific time interval. 
            //Schedule<MyTask>().ToRunOnceIn(5).Seconds();

            // Schedule a simple task to run at a specific time
            //Schedule(() => Console.WriteLine("Timed Task - Will run every day at 9:15pm: " + DateTime.Now)).ToRunEvery(1).Days().At(21, 15);

            // Schedule a more complex action to run immediately and on an monthly interval
            //Schedule(() =>
            //{
            //    Console.WriteLine("Complex Action Task Starts: " + DateTime.Now);
            //    Console.WriteLine("Complex Action Task Ends: " + DateTime.Now);
            //}).ToRunNow().AndEvery(1).Months().OnTheFirst(DayOfWeek.Monday).At(3, 0);

            //Schedule multiple tasks to be run in a single schedule
            Schedule<MyTask>().AndThen<MyOtherTask>().ToRunNow().AndEvery(5).Seconds();

           
        }
    }

    public class MyTask : IJob
    {
        public static int MyTaskExeCount;
        public void Execute()
        {
            Console.WriteLine("這是MyTask正在第"+ MyTaskExeCount + "次執行");
            MyTaskExeCount += 1;
        }
    }

    public class MyOtherTask : IJob
    {
        public void Execute()
        {
            Console.WriteLine("這是MyOtherTask正在執行");
        }
    }
}

 

然后直接在控制台Program中調用:

  class Program
    {
        static void Main(string[] args)
        {
            new Klass();
            Console.ReadKey();
        }
    }

結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM