最近因为项目需要用到了Quartz,下面简单记录一下。

一、首先需要安装Quartz。

二、定义一个执行的Job类,实现IJob接口,接口有一个方法Execute,用来执行定时任务的实现内容。

    public class HelloJob : IJob
{
public async Task Execute(IJobExecutionContext context)
{
Console.WriteLine("作业执行!");
}
}

三、定时触发,根据设定的时间间隔触发。

            //从工厂中获取一个调度器实例化
IScheduler scheduler = await StdSchedulerFactory.GetDefaultScheduler(); await scheduler.Start(); //开启调度器 //==========例子1(简单使用)=========== IJobDetail job1 = JobBuilder.Create<HelloJob>() //创建一个作业
.WithIdentity("job", "group1")
.Build(); ITrigger trigger1 = TriggerBuilder.Create()
.WithIdentity("trigger", "group1")
.StartNow() //现在开始
.WithSimpleSchedule(x => x //触发时间,5秒一次。
.WithIntervalInSeconds(5)
.RepeatForever()) //不间断重复执行
.Build(); await scheduler.ScheduleJob(job1, trigger1); //把作业,触发器加入调度器。

四、仅触发一次,定时器在设定时间内,只触发一次。

            IScheduler scheduler = await StdSchedulerFactory.GetDefaultScheduler();

            IJobDetail job = JobBuilder.Create<HelloJob>()  //创建一个作业
.WithIdentity("job3", "group3")
.Build(); ITrigger trigger = trigger = (ISimpleTrigger)TriggerBuilder.Create()
.WithIdentity("trigger3", "group3")
.StartAt(DateBuilder.FutureDate(1, IntervalUnit.Second)) //使用DateBuilder将来创建一个时间日期
.ForJob(job) //通过JobKey识别作业
.Build(); await scheduler.ScheduleJob(job,trigger);
await scheduler.Start();

  

最新文章

  1. 错误-spring3.2的架构在tomcat6.0中无法正常启动,抛出java.lang.NoClassDefFoundError: javax/servlet/AsyncListener
  2. git入门网站
  3. get,post 区别,HTTP通信
  4. javascript基础知识复习一
  5. [转]zetex.lib
  6. 百度地图简单使用——添加折线,圆形等(html,js)
  7. HDU 1721
  8. PL/pgSQL学习笔记之十一
  9. mysql插入数据时,中文乱码
  10. IOS--当字符串返回的数据格式为xml/html时
  11. Oracle数据库的安装详解
  12. POJ2771_Guardian of Decency(二分图/最大独立集=N-最大匹配)
  13. 快捷配置Hibernate实现对数据库的配置(构建通道)
  14. lsdslam代码笔记
  15. 剑指offer--二叉树的后序遍历
  16. 搭建java环境——使用Sublime Text 3(windows环境)
  17. JavaScript 字典(Dictionary)
  18. [LeetCode] Bold Words in String 字符串中的加粗单词
  19. Java安全套接字扩展——JSSE
  20. hadoop分布式安装部署详细视频教程(网盘附配好环境的CentOS虚拟机文件/hadoop配置文件)

热门文章

  1. require sqlite3时报The specified module could not be found.错误
  2. 使用python画一颗圣诞树
  3. grafana+mysql忘记admin密码解决方法
  4. js自动访问数据库
  5. OS创建页目录和页
  6. Pyhton3异常处理
  7. Go by Example-变量
  8. gacutil.exe的位置
  9. [RK3399] 调试串口ttyS2改为普通串口
  10. Flutter移动电商实战 --(49)详细页_Stack制作底部工具栏