1. 引用程序包 Quartz 2.6.2
2. 调用代码
public static void Start() { IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler(); scheduler.Start(); IJobDetail job = JobBuilder.Create<TimeJob>().Build(); ITrigger trigger = TriggerBuilder.Create() .WithIdentity("triggerName", "groupName") .WithSimpleSchedule(t => t.WithIntervalInSeconds(2) .RepeatForever()) .Build(); scheduler.ScheduleJob(job, trigger); }
或者使用Cron表达式
public static void Start2() { IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler(); scheduler.Start(); IJobDetail job = JobBuilder.Create<ReportJob>().Build(); ITrigger trigger = TriggerBuilder.Create() .WithIdentity("triggerName2", "groupName") .WithCronSchedule("0 0 12 * * ?") .Build(); scheduler.ScheduleJob(job, trigger); }
然后在程序启动的时候调用 Start和 Start2 方法。
/// <summary> /// Job。 /// </summary> public class TimeJob : IJob { public void Execute(IJobExecutionContext context) { Console.WriteLine($"TimeJob,{DateTime.Now:HH:mm:ss}"); } } public class ReportJob : IJob { public void Execute(IJobExecutionContext context) { Console.WriteLine($"ReportJob,{DateTime.Now:HH:mm:ss}"); } }

浙公网安备 33010602011771号