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

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

簡單代碼async

 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/ui

相關文章
相關標籤/搜索