Schedule 学习
现在做的项目都有用到Schedule,现在用一点时间来总结。
一、首先要到Nuget中下载Quartz.net。
二、下载下来了,你需要对它进行配置,使它能给你正常的使用。
三、在Global.asax中进行quartz进行初始化。
四、quartz_jobs_Schedule.xml 可以在这边个格式是这样的。
<schedule>
<name>DownloadDso</name>
<job-type>LocalKwmsOne.Schedule.Jobs.DownloadDSOToSystem, LocalKwmsOne.Schedule</job-type>
<durable>true</durable>
<recover>false</recover>
<cron-expression>0/45 * * * * ?</cron-expression>
<status>Enabled</status>
</schedule>
五、这边一个建立一个list来保存xml文件中的节点中各个字段的值。
public List<ScheduleTask> ScheduleTaskInit()
{
List<ScheduleTask> ScheduleTask = new List<ScheduleTask>();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(quartz_jobs_Schedule_Path);
XmlNodeList nodeList = xmlDoc.SelectSingleNode("job-scheduling-data").ChildNodes;
foreach (XmlNode xn in nodeList)
{
string taskName = String.Empty;
string taskType = String.Empty;
string cronString = String.Empty;
string taskStatus = String.Empty;
Dictionary<string, object> taskParameter = new Dictionary<string, object>();
XmlElement xe = (XmlElement)xn;
XmlNodeList nls = xe.ChildNodes;
foreach (XmlNode xn1 in nls)
{
if (xn1.Name == "name")
{
taskName = xn1.InnerText;
continue;
}
if (xn1.Name == "job-type")
{
taskType = xn1.InnerText.Split(',')[0];
continue;
}
if (xn1.Name == "status")
{
taskStatus = xn1.InnerText;
continue;
}
if (xn1.Name == "cron-expression")
{
cronString = xn1.InnerText;
continue;
}
taskParameter.Add(xn1.Name, xn1.InnerText);
}
if (ScheduleTask.Where(t => t.TaskName.Equals(taskName)) != null && ScheduleTask.Where(t => t.TaskName.Equals(taskName)).Count() > 0)
continue;
ScheduleTask.Add(new ScheduleTask(taskName, taskType, cronString, taskParameter, taskStatus));
}
return ScheduleTask;
}
六、然后在global中进行参数传入,进行foreach每一个list初始化,scheduler.scheduleJob(,);这边进行Schedule的
设置。
Schedule 学习的更多相关文章
- springTask和Schedule学习
Spring 4.x Task 和 Schedule 概述 http://www.jianshu.com/p/1778f6b9646e spring framework --- 定时任务(翻译官方文档 ...
- Cocos2d-x学习笔记(六) 定时器Schedule的简单应用
Cocos2d-x中的定时器使用非常easy,共同拥有3种:schedule.scheduleUpdate和scheduleOnce.简介一下三种的差别: schedule,每隔指定时间运行某个 ...
- Python源码学习Schedule
关于我 一个有思想的程序猿,终身学习实践者,目前在一个创业团队任team lead,技术栈涉及Android.Python.Java和Go,这个也是我们团队的主要技术栈. Github:https:/ ...
- 【转】Python源码学习Schedule
原文:https://www.cnblogs.com/angrycode/p/11433283.html ----------------------------------------------- ...
- 定时任务调度工作(学习记录 四)schedule与scheduleAtFixedRate的区别
根据两种情况来看区别 一.首次计划执行的时间早于当前的时间 1.schedule方法 “fixed-delay”:如果第一次执行时间被延迟了,随后的执行时间按照上一次实际执行完成的时间点进行计算 演示 ...
- 全面学习ORACLE Scheduler特性(4)创建和管理Schedule
三.使用Schedules 10g 中新推出的SCHEDULER可能确实会让很多初接触的朋友感觉晕头晕脑,相比之前的jobs,SCHEDULER中新增的概念太多.比如说jobs,仍然可以理解成之前版本 ...
- Python3.7.1学习(二)使用schedule模块定时执行任务
python中有一个轻量级的定时任务调度的库:schedule.他可以完成每分钟,每小时,每天,周几,特定日期的定时任务.因此十分方便我们执行一些轻量级的定时任务. 1 安装 1.1在cmd中输入p ...
- 【学习中】Unity<中级篇> Schedule
章节 内容 签到 Unity3D 实战技术第二版视频教程(中级篇) 1.游戏引擎发展史 2.Unity发展史 3.3D图形学与必要组件 5月19日 4.核心类_GameObject类 5月19日 5. ...
- cocos2d-x 3.0 学习笔记: 一个可以拖拽的Label及schedule的应用
#ifndef _DRAGLABEL_H_ #define _DRAGLABEL_H_ #include "cocos2d.h" USING_NS_CC; class DragLa ...
随机推荐
- CSS3的基础用法
CSS3的现状:1.浏览器支持程度差,需要添加私有前缀 2.移动端支持优于PC端 3.不断改进中 4.应用相对广泛 在CSS3中增加新增了许多灵活查找元素的方法,极大的提高了查找元素的效率和精准度.C ...
- 数据库查询优化-SQL优化
1.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默 ...
- web.py框架入门
在使用微信搭建公众平台的时候,使用的是web.py这个方便简单的框架,学习一下. 框架文档:http://webpy.org/docs/0.3/tutorial.zh-cn 按照文档的内容写一遍程序 ...
- [HTML/HTML5]2 CSS样式表设置
2.1 在HTML文件中设置样式表 当前HTML"规则"指出:HTML仅用于标识页面的内容,应该使用样式表来定义内容的呈现样式.这不仅使Web页面对于所有用户(无论采用什么浏览器 ...
- kafka 搭建与使用
消息量非超级多不建议使用,可以使用redis或Beanstalkd 使用简单 Beanstalkd 客户端建议用:composer require pda/pheanstalk 如果无JAVA JDK ...
- HTML 或 CSS 文件中引用的图片文件移动到任意位置
对于一个套接字的输入操作,第一步通常涉及等待数据从网络到达,当所等待分组到达时,被复制到内核的某个缓冲区: 第二步就是把数据从内核缓冲区复制到应用进程缓冲区.通过 Session 的 createQu ...
- WeCenter二次开发教程(一):熟悉模板结构
<1>程序文件目录介绍: app – 应用目录 models – 模型目录 plugins – 插件目录 static – 静态文件 system – 系统目录 views – 模板目录 ...
- Python笔记总结week4
1. Built-in functions 函数可能遇到的问题:下面例子函数改变了函数需要传入的参数 li = [11,22,33,44] def f1(arg): arg.append(55) ...
- 【转】PostgreSQL分布式事务配置
XA是open group提出的分布式事务处理规范,JTA支持XA规范,JTA只规定了接口,有些应用容器提供实现,也有一些三方的开源实现可用,比如Atomikos. 如果PostgreSQL参与分布式 ...
- js中setTimeout()时间参数设置为0的探讨
起因源于一道前端笔试题: var fuc = [1,2,3]; for(var i in fuc){ setTimeout(function(){console.log(fuc[i])},0); co ...