时间:2021-05-20
调度器(scheduler)必须在实例化之后才能使用(谁能想到呢?)。你可以通过一个ISchedulerFactory接口的实例来实现它。
实例化调度器(scheduler)后,可以启动、处于待机模式或者关闭。注意,一个调度器(scheduler)一旦被关闭,它必须被重新实例化才可以再次启动。直到调度器(scheduler)启动,触发器(Triggers)才会被触发(执行任务(job)),但处于暂停模式的触发器(trigger)不会被触发。
这里有一段简单的代码,实例化了一个调度器(scheduler)并启动了它,还调度了一个任务(job)去执行。
使用 Quartz.NET
// construct a scheduler factory 构造一个scheduler工厂 NameValueCollection props = new NameValueCollection { { "quartz.serializer.type", "binary" } }; StdSchedulerFactory factory = new StdSchedulerFactory(props); // get a scheduler 获取一个scheduler IScheduler sched = await schedFact.GetScheduler(); await sched.Start(); // define the job and tie it to our HelloJob class 定义一个job,与HelloJob类关联 IJobDetail job = JobBuilder.Create<HelloJob>() .WithIdentity("myJob", "group1") .Build(); // Trigger the job to run now, and then every 40 seconds 触发任务马上执行,并且每40秒执行一次 ITrigger trigger = TriggerBuilder.Create() .WithIdentity("myTrigger", "group1") .StartNow() .WithSimpleSchedule(x => x .WithIntervalInSeconds(40) .RepeatForever()) .Build(); await sched.ScheduleJob(job, trigger);如你所见,使用 Quartz.NET 非常简单。之后我们会给出一个关于任务(Jobs)和触发器(Triggers)的快速概览,方便你更好地理解这个例子。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Quartz.net是作业调度框架,具体内容如下1.项目中添加quartz.net的引用(这里使用nuget管理)新建一个类TimingJob,该类主要用于实现
一、介绍Quartz.NET是一个强大、开源、轻量的作业调度框架,是OpenSymphony的QuartzAPI的.NET移植,用C#改写,可用于winform
本文主要是对Handler和消息循环的实现原理进行源码分析,如果不熟悉Handler可以参见博文《详解Android中Handler的使用方法》,里面对Andr
一、前言运用场景Quartz.Net是一个强大、开源、轻量的作业调度框架,在平时的项目开发当中也会时不时的需要运用到定时调度方面的功能,例如每日凌晨需要统计前一
java仿Servlet生成验证码实例详解实现原理:使用BufferedImage对象的Graphics来进行绘制,然后输出成一张图片进行保存实现代码及详解:p