这是一个使用 .NET Core 和 Quartz.NET 实现定时任务的完整示例。首先确保已经安装了 .NET Core SDK。接下来按照以下步骤创建一个新的控制台应用程序并设置定时任务:

  1. 创建一个新的 .NET Core 控制台应用程序:

    dotnet new console -n QuartzDemo
    cd QuartzDemo
  2. 通过 NuGet 添加 Quartz.NET 包:

    dotnet add package Quartz --version 3.3.3
  3. 打开 Program.cs 文件并替换其内容:

    using System;
    using System.Threading.Tasks;
    using Quartz;
    using Quartz.Impl; namespace QuartzDemo
    {
    public class HelloWorldJob : IJob
    {
    public Task Execute(IJobExecutionContext context)
    {
    Console.WriteLine("Hello, world! " + DateTime.Now); return Task.CompletedTask;
    }
    }
    class Program
    {
    static async Task Main(string[] args)
    {
    // 创建调度器
    StdSchedulerFactory factory = new StdSchedulerFactory();
    IScheduler scheduler = await factory.GetScheduler(); // 启动调度器
    await scheduler.Start(); // 创建一个作业
    IJobDetail job = JobBuilder.Create<HelloWorldJob>()
    .WithIdentity("helloWorldJob", "group1")
    .Build(); // 创建一个触发器
    ITrigger trigger = TriggerBuilder.Create()
    .WithIdentity("helloWorldTrigger", "group1")
    .StartNow()
    .WithSimpleSchedule(x => x
    .WithIntervalInSeconds(5)
    .RepeatForever())
    .Build();
    // 将作业和触发器添加到调度器
    await scheduler.ScheduleJob(job, trigger); // 等待用户按键以关闭
    Console.WriteLine("Press any key to close the application...");
    Console.ReadKey(); // 关闭调度器
    await scheduler.Shutdown();
    }
    }
    }

    该示例创建了一个名为 HelloWorldJob 的作业,每隔 5 秒执行一次。作业的内容仅输出当前时间的 Hello, world! 消息。

  4. 运行应用程序:

    dotnet run

  5. 在控制台中,你将看到每隔 5 秒输出一次 "Hello, world!" 以及当前时间。

通过以上步骤,你已成功创建了一个使用 .NET Core 和 Quartz.NET 实现的定时任务示例。你可以根据需求自定义作业和触发器,实现更复杂的定时任务。

.netcore 使用Quartz定时任务的更多相关文章

  1. Quartz定时任务学习(二)web应用/Quartz定时任务学习(三)属性文件和jar

    web中使用Quartz 1.首先在web.xml文件中加入 如下内容(根据自己情况设定) 在web.xml中添加QuartzInitializerServlet,Quartz为能够在web应用中使用 ...

  2. quartz定时任务框架的使用

    quartz定时任务时间设置 这些星号由左到右按顺序代表 :     *    *     *     *    *     *   *                                 ...

  3. Quartz定时任务学习(二)web应用

    web中使用Quartz 1.首先在web.xml文件中加入 如下内容(根据自己情况设定) 在web.xml中添加QuartzInitializerServlet,Quartz为能够在web应用中使用 ...

  4. Quartz定时任务使用小记(11月22日)

    骤然接触quartz,先从小处着手,why,what,how quartz定时任务: 为什么使用quartz定时任务,以及定时任务在实际应用场景下的特定需求. 1.用户方面的需要,为了提供更好的使用体 ...

  5. quartz定时任务时间配置

    quartz定时任务时间设置描述(2011-03-03 16:23:50)转载▼标签: quartz时间it 分类: 凌乱小记  这些星号由左到右按顺序代表 :     *    *     *    ...

  6. 对quartz定时任务的初步认识

    已经好久没有写技术博文了,今天就谈一谈我前两天自学的quartz定时任务吧,我对quartz定时任务的理解,就是可以设定一个时间,然后呢,在这个时间到的时候,去执行业务逻辑,这是我的简单理解,接下来看 ...

  7. Spring整合Quartz定时任务执行2次,Spring定时任务执行2次

    Spring整合Quartz定时任务执行2次,Spring定时任务执行2次 >>>>>>>>>>>>>>>&g ...

  8. Quartz 定时任务时间设置

    转自https://blog.csdn.net/zdx1515888659/article/details/79158169 quartz定时任务时间设置: 这些星号由左到右按顺序代表 : * * * ...

  9. quartz定时任务及时间设置

    quartz 定时任务时间设置1.这些星号由左到右按顺序代表 :     *    *     *     *    *     *   *                               ...

  10. Spring整合Quartz定时任务 在集群、分布式系统中的应用(Mysql数据库环境)

    Spring整合Quartz定时任务 在集群.分布式系统中的应用(Mysql数据库环境)   转载:http://www.cnblogs.com/jiafuwei/p/6145280.html 单个Q ...

随机推荐

  1. AOP+自定义注解实现权限校验-2022新项目

    一.业务场景 当前本人参与开发的是一个业务中台系统,所谓的中台简单的理解就是把相同的功能给抽取出来.比如系统A.B.C.D都需要进行用户登录操作,那么可以把用户信息管理这一块抽取出来为一个独立的系统E ...

  2. 适用mybatis和jpa的全数据库类型主键生成插件,分布式高并发有序id生成器

    适用mybatis和jpa的全数据库类型主键生成插件,分布式高并发有序id生成器

  3. br 词根 分支 broad bread branch brother broom 看到abroad后查到的

    br-分支 cl-集合 pater-父亲 br/other 兄弟-br/oom笤帚-br/eed繁殖-br/ood一窝-br/eak打破-br/anch分枝 cl/ash碰撞-class/ify分类- ...

  4. if (ctx.ifTo(ctx.property, next)) return

    if (ctx.ifTo(ctx.property, next)) return if (ctx.ifGoto(ctx.property, 'functionName')) return 试试 a & ...

  5. Ubuntu adb 报错:no permissions (missing udev rules? user is in the plugdev group);问题的解决办法

    问题重现: 确认: Android设备已连接PC Android设备已打开USB调试 zuo@zuo-ubuntu:/etc/udev/rules.d$ adb devices List of dev ...

  6. 微信小程序开发:异步处理接入的生成式图像卡通化

    书接上文,我们完成了对接阿里云人像动漫化接口,现已完成的界面是这样的: 就是效果看着一般,看看效果: 然后我就在阿里云api市场转悠,就想看看还有没有什么其他奇奇怪怪的api,结果就发现了这个: ap ...

  7. npm create vue@latest 执行过程

    1. 引言 目前(2024年3月13日),打开Vue的官网,可以发现其推荐新建一个Vue项目的命令是npm create vue@latest,为啥这句命令就可以创建一个Vue项目呢 2. 执行过程 ...

  8. linux 禁用休眠,挂起,睡眠

    参照 https://www.cnblogs.com/minseo/p/13557947.html 禁用休眠前查看状态 systemctl status sleep.target suspend.ta ...

  9. Spark的基本原理

    Application Application是在使用spark-submit 提交的打包程序,也就是需要写的代码.完整的Application一般包含以下步骤:(1)获取数据(2)计算逻辑(3)输出 ...

  10. 【已解决】java.lang.IllegalStateException:在提交响应后无法转发

    出现这个问题的根本原因在于这一行代码: 解决办法就是把super这一行代码删掉. 这一行代码简单理解就是:HTTPServlet的doPost方法的默认实现返回HTTP 405状态码. 父类HttpS ...