C# 使用 quartz.net 做定時任務


Quartz.NET  是一套很好的任務調度框架。在設置定時時間的時候,使用了cron表達式很方便

簡單代碼

 public async Task beginStart()
        {
            //從工廠中獲取一個調度器實例化
            IScheduler scheduler = await StdSchedulerFactory.GetDefaultScheduler();
            await scheduler.Start();       //開啟調度器

            //==========例子1(簡單使用)===========
            var type = Type.GetType("ConsoleTopshelf.HelloJob");

            IJobDetail job1 = JobBuilder.Create(type)   //創建一個作業
                .WithIdentity("作業名稱", "作業組")
                .Build();

            ITrigger trigger = TriggerBuilder.Create()
                .WithIdentity("觸發器名稱", "觸發器組")
                .StartNow()
                .WithCronSchedule("/1 * * * * ? ")  //corn 表達式 每秒執行一次
                .Build();

            await scheduler.ScheduleJob(job1, trigger);      //把作業,觸發器加入調度器。
        }

 

using Quartz;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleTopshelf
{
    /// <summary>
    /// 作業
    /// </summary>
    public class HelloJob : IJob
    {
        public async Task Execute(IJobExecutionContext context)
        {
            Console.WriteLine("HelloJob" + System.DateTime.Now);
        }
    }
}

 

corn表達式在線生成 http://cron.qqe2.com/

 


免責聲明!

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



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