public class IndexJob:IJob//此处必须实现 IJob接口
{
/// <summary>
/// 具体的任务
/// </summary>
/// <param name="context"></param>
IBLL.IkeyWordsRankService KeyWordService = new BLL.keyWordsRankService();
public void Execute(JobExecutionContext context)
{
KeyWordService.DeleteAll();
KeyWordService.InsertKeyWordRank();
}
}
1 static void Main(string[] args)
2 {
3 IScheduler iScheduler=new StdSchedulerFactory().GetScheduler();
4
5 //每隔一段时间执行任务
6
7 IScheduler sched;
8 ISchedulerFactory sf = new StdSchedulerFactory();
9 sched = sf.GetScheduler();
10 JobDetail job = new JobDetail("job1", "group1", typeof(IndexJob));//IndexJob为实现了IJob接口的类
11 DateTime ts = TriggerUtils.GetNextGivenSecondDate(null, 5);//5秒后开始第一次运行
12 TimeSpan interval = TimeSpan.FromSeconds(5);//每隔1小时执行一次
13 Trigger trigger = new SimpleTrigger("trigger1", "group1", "job1", "group1", ts, null,
14 SimpleTrigger.RepeatIndefinitely, interval);//每若干小时运行一次,小时间隔由appsettings中的IndexIntervalHour参数指定
15
16 sched.AddJob(job, true);
17 sched.ScheduleJob(trigger);
18 sched.Start();
19 Console.ReadKey();
20 //要关闭任务定时则需要sched.Shutdown(true)
21 }