栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Quartz.Net实现原理及使用方法详解

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Quartz.Net实现原理及使用方法详解

调度器(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()
		.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)的快速概览,方便你更好地理解这个例子。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/130080.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号