首页 > 其他分享 > Quartz.Net 调度器

Quartz.Net 调度器

时间:2023-05-25 14:33:17浏览次数:27  
标签:触发器 Quartz await 调度 scheduler Net

  1. 首先需要引入 Quartz.Net 的命名空间,例如:
 
using Quartz; using Quartz.Impl; 
  1. 然后创建一个调度器工厂(SchedulerFactory),并使用该工厂创建一个调度器(IScheduler)对象:
 
ISchedulerFactory schedulerFactory = new StdSchedulerFactory(); IScheduler scheduler = await schedulerFactory.GetScheduler(); 
  1. 创建一个任务(IJob)类,该类需要实现 Execute 方法。例如:
 
public class MyJob : IJob { public Task Execute(IJobExecutionContext context) { // 执行任务的代码逻辑 return Task.CompletedTask; } } 
  1. 创建一个触发器(ITrigger)对象,并设置触发器的运行时间、运行频率等属性。例如:
 
ITrigger trigger = TriggerBuilder.Create() .WithIdentity("myTrigger", "group1") .StartNow() .WithSimpleSchedule(x => x .WithIntervalInSeconds(10) .RepeatForever()) .Build(); 
  1. 将任务和触发器加入调度器中:
 
IJobDetail job = JobBuilder.Create<MyJob>() .WithIdentity("myJob", "group1") .Build(); await scheduler.ScheduleJob(job, trigger); 
  1. 启动调度器:
 
await scheduler.Start(); 
  1. 暂停调度器:
 
await scheduler.PauseAll(); 
  1. 恢复调度器:
 
await scheduler.ResumeAll(); 
  1. 删除调度器中的任务和触发器:
 
await scheduler.DeleteJob(new JobKey("myJob", "group1")); 
  1. 停止调度器:
 
await scheduler.Shutdown();

标签:触发器,Quartz,await,调度,scheduler,Net
From: https://www.cnblogs.com/manwwx129/p/17431121.html

相关文章

  • .NET周报 【5月第3期 2023-05-21】
    国内文章C#实现Linux视频会议(源码,支持信创环境,银河麒麟,统信UOS)https://www.cnblogs.com/shawshank/p/17390248.html信创是现阶段国家发展的重要战略之一,面对这一趋势,所有的软件应用只有支持信创国产化的基础软硬件设施,在未来才不会被淘汰。那么,如何可以使用C#来实现支持信创......
  • 一文读懂如何将 Rancher 下游集群升级到 Kubernetes v1.25
    介绍最初在Kubernetesv1.21中被弃用的PodSecurityPolicyAPI,已经在Kubernetesv1.25中被完全删除。由于API被移除,你无法在Kubernetesv1.25集群中创建、编辑或查询PodSecurityPolicy资源。此外,由于其准入控制器已被移除,所以你的集群无法再强制执行在Kubernetesv1.24......
  • 为什么Kubernetes已经成为程序员标配技能
    本文首发自「慕课网」,想了解更多IT干货内容,程序员圈内热闻,欢迎关注"慕课网"及“慕课网公众号”!作者:一凡|慕课网讲师为什么Kubernetes已经成为程序员必备技能DevOps这个词语相信小伙伴们并不陌生,Dev即软件开发人员,Ops即IT运维人员,随着自动化技术的发展,Dev与Ops的界限将越来与模糊,这......
  • .NET中使用redis
    NuGet中安装对应的redis操作工具:StackExchange.Redis redis帮助类: ///<summary>   ///Redis读写帮助类   ///</summary>   publicclassRedisHelper   {       privatestringRedisConnectionStr=ConfigurationManager.AppSettings["RedisC......
  • 如何用windows任务视图管理多个程序,提高.net开发效率
    在Windows操作系统中,任务栏是一个非常重要的工具栏,用来显示当前正在运行的程序和任务。如果同时运行了很多程序,任务栏上的图标就会变得非常拥挤,不方便管理和切换。为了提高工作效率,可以通过任务视图来将这些运行程序分组,以便更好地管理和切换。任务视图是Windows操作系统中的......
  • 基于.NetCore开源的Windows的GIF录屏工具
    推荐一个Github上Start超过20K的超火、好用的屏幕截图转换为GIF动图开源项目。项目简介这是基于.NetCore+WPF开发的、开源项目,可将屏幕截图转为GIF动画。它的核心功能是能够简单、快速地截取整个屏幕或者选定区域,并将其转为GIF动画,还支持自定义GIF动画效果、字幕、背......
  • elasticsearch在启动后出现[transport.netty][solr001] exception caught on transpor
    elasticsearch在启动后出现如下错误:[2019-04-18T09:29:57,850][WARN][o.e.t.n.Netty4Transport ][xHaZmSP]exceptioncaughtontransportlayer[[id:0xe6246f88,L:/127.0.0.1:9300-R:/127.0.0.1:9493]],closingconnectionjava.io.IOException:杩滅▼涓绘満寮鸿揩鍏......
  • .NET技术:构建高效稳定的企业级应用程序
    在当今数字化的时代,企业对于高效、稳定和可扩展的应用程序需求日益增长。作为一个资深的.NET开发人员,我深知.NET技术的强大之处以及它在企业级应用程序开发中的重要性。本篇博客将探讨.NET技术在构建高效稳定的企业级应用程序中的关键优势,并分享一些实用的开发技巧和最佳实践。一、......
  • BenchmarkDotNet 概述--性能测试
    BenchmarkDotNet概述BenchmarkDotNethelpsyoutotransformmethodsintobenchmarks,tracktheirperformance,andsharereproduciblemeasurementexperiments.It'snoharderthanwritingunittests提取几个关键字(其实是只认识那几个英文单词)将方法转换基准测......
  • Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connectio
    现象:今天在启动项目时,本项目使用了Elasticsearch服务,发现后台报这个错误:Causedby:io.netty.channel.AbstractChannel$AnnotatedConnectException:Connectionrefused:nofurtherinformation:/127.0.0.1:9300错误信息提示如下图:原因:本项目使用了Elasticsearch搜索服务,而报错信......