Quartz net怎么用cron表达式实现10秒执行一次
在Quartz .NET中,可以使用Cron表达式来实现每10秒执行一次的调度任务。
首先,你需要添加对Quartz .NET的引用。然后,你可以创建一个调度器和作业细节,然后将其计划为每10秒执行一次。
下面是一个示例代码:
using Quartz;
using Quartz.Impl;
using System;
class Program
{
static async System.Threading.Tasks.Task Main(string[] args)
{
// 创建调度器
var schedulerFactory = new StdSchedulerFactory();
var scheduler = await schedulerFactory.GetScheduler();
// 开启调度器
await scheduler.Start();
// 创建作业细节
var jobDetail = JobBuilder.Create<SampleJob>()
.WithIdentity("sampleJob", "group1")
.Build();
// 创建触发器,使用Cron表达式
var trigger = TriggerBuilder.Create()
.WithIdentity("sampleTrigger", "group1")
.WithCronSchedule("0/10 * * * * ?") // 每10秒执行一次
.Build();
// 将作业细节和触发器关联起来
await scheduler.ScheduleJob(jobDetail, trigger);
// 等待10分钟后关闭调度器
await Task.Delay(TimeSpan.FromMinutes(10));
await scheduler.Shutdown();
}
}
public class SampleJob : IJob
{
public async Task Execute(IJobExecutionContext context)
{
await Console.Out.WriteLineAsync("Job executed!");
}
}
在上面的示例代码中,我们创建了一个调度器,然后创建了一个SampleJob作业细节,并使用Cron表达式"0/10 * * * * ?"来创建一个触发器,该触发器将每10秒执行一次作业。
最后,我们将作业细节和触发器关联起来,并启动调度器。
请注意,这只是一个简单的示例,实际使用中可能需要根据具体需求进行调整
原文地址: https://www.cveoy.top/t/topic/ibPF 著作权归作者所有。请勿转载和采集!