首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Quartz.net简单示例

Quartz.NET 是一个基于 .NET 平台的任务调度库,它提供了一种功能强大、易于使用的方式来管理和调度定时任务。以下是一个简单的示例:

首先,需要在项目中安装 Quartz.NET 的 NuGet 包:

代码语言:txt
复制
Install-Package Quartz

然后,创建一个调度程序并添加一个作业:

代码语言:csharp
复制
using Quartz;
using Quartz.Impl;

// 创建调度程序
ISchedulerFactory schedFact = new StdSchedulerFactory();
IScheduler sched = await schedFact.GetScheduler();

// 创建作业
IJobDetail job = JobBuilder.Create<MyJob>()
    .WithIdentity("myJob", "group1")
    .Build();

// 创建触发器
ISimpleTrigger trigger = (ISimpleTrigger)TriggerBuilder.Create()
    .WithIdentity("myTrigger", "group1")
    .StartNow()
    .WithSimpleSchedule(x => x
        .WithIntervalInSeconds(5)
        .RepeatForever())
    .Build();

// 调度作业
await sched.ScheduleJob(job, trigger);

// 启动调度程序
await sched.Start();

其中,MyJob 是一个实现 IJob 接口的作业类,它的 Execute 方法将会在触发器触发时执行:

代码语言:csharp
复制
using Quartz;

public class MyJob : IJob
{
    public async Task Execute(IJobExecutionContext context)
    {
        // 在这里执行你的任务
        Console.WriteLine("Hello, world!");
    }
}

这个示例中,我们创建了一个名为 myJob 的作业,它将在每隔 5 秒钟执行一次。调度程序启动后,作业将自动执行,并输出 "Hello, world!" 到控制台。

总结:Quartz.NET 是一个功能强大的任务调度库,可以方便地管理和调度定时任务。它提供了一种简单的方式来创建和调度作业,并支持多种触发器类型和调度策略。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券