C# 计划任务
2014-07-03 15:15
218 查看
计划任务 : 个人理解, 就是后台控制程序要求在一定的时间执行相应的任务.
直接上代码:
之前,因为工作需要. 要求每天在凌晨2:00,执行要做的数据
1.1 声明一个接口 Ijob
方法: 执行
1.2 声明一个调度程序配置类
属性: 任务列表 (要实行的任务) , 时间间隔 (多久执行一次);
1.3 声明调度程序类
方法: 开启
属性: 调度程序配置对象
1.4 实现 : Ijob接口
1.5 在程序入口(主线程) 运行
这样, 一个简单的计划任务,就实现了.
直接上代码:
之前,因为工作需要. 要求每天在凌晨2:00,执行要做的数据
1.1 声明一个接口 Ijob
方法: 执行
public interface IJob { //执行方法 void Execute(); }
1.2 声明一个调度程序配置类
属性: 任务列表 (要实行的任务) , 时间间隔 (多久执行一次);
/// <summary> /// 调度程序配置 /// </summary> public class SchedulerConfiguration { private int sleepInterval; private List<IJob> jobs = new List<IJob>(); public SchedulerConfiguration(int newsleepInterval) { this.SleepInterval = newsleepInterval; } /// <summary> /// 任务列表 /// </summary> public List<IJob> Jobs { get { return jobs; } } /// <summary> /// 时间间隔 /// </summary> public int SleepInterval { get { return sleepInterval; } set { sleepInterval = value; } }
1.3 声明调度程序类
方法: 开启
属性: 调度程序配置对象
/// <summary> /// 调度程序 /// </summary> public class Scheduler { private SchedulerConfiguration configuration = null; public Scheduler(SchedulerConfiguration SchedulerConn) { Sconn = SchedulerConn; } /// <summary> /// 开始执行的方法 /// </summary> public void Start() { while (true) { foreach (IJob job in configuration.Jobs) { ThreadStart _threadDelegate = new ThreadStart(job.Execute); Thread _thread = new Thread(_threadDelegate); _thread.Start(); Thread.Sleep(configuration.SleepInterval); } } } /// <summary> /// 调度程序配置信息 /// </summary> public SchedulerConfiguration Sconn { get { return configuration; } set { configuration = value; } }
1.4 实现 : Ijob接口
class person : IJob { void IJob.Execute() { ThreadTest(); } public void ThreadTest(){ //...... } }
1.5 在程序入口(主线程) 运行
public static System.Threading.Thread schedulerThread = null; static void Main(string[] args) { //调度程序配置(每小时执行一次) SchedulerConfiguration config = new SchedulerConfiguration(1000 * 60 * 60); //给配置添加工作 config.Jobs.Add(new person()); //调度程序 Scheduler scheduler = new Scheduler(config); //执行线程 schedulerThread = new System.Threading.Thread(new ThreadStart(scheduler.Start)); schedulerThread.Start(); }
这样, 一个简单的计划任务,就实现了.
相关文章推荐
- C#模拟windows xp中的定时计划任务
- C#读取注册表,C#创建任务计划
- 使用C#实现计划任务(corn job)
- Asp.Net(C#)自动执行计划任务的程序实例分析分享
- Asp.Net(C#)自动执行计划任务的程序实例分析
- 在C#中实现计划与任务
- 使用C#创建计划任务(How to create a Task Scheduler use C# )
- vs2010 创建windows服务( Asp.net(C#) windows 服务 用于实现计划任务,事件监控等)
- vs2010 创建windows服务( Asp.net(C#) windows 服务 用于实现计划任务,事件监控等)
- C# 线程 计划任务
- C#读取注册表,C#创建任务计划
- Asp.net(C#) windows 服务{用于实现计划任务,事件监控等}
- C# 用TaskScheduler.dll 创建 windows任务计划
- C#读取win7和Server2008计划任务(附带读取开机关机时间)
- C#操作计划任务
- c# 仿照计划任务(定时提示、定时运行程序、定时打开url(前台/后台))/每天/每周/每月/一次 多时间段
- C#添加设置任务计划
- c#.net向windows添加计划任务(task schduler)项
- 使用C#开发计划任务调度服务
- .net c#操作windows计划任务程序,新建,运行,停止,启用,禁用计划任务