C#定时任务(二)

前面定时器的使用步骤已经做了讲解,接着了解一下有关定时器的方法。种类有很多很多,可以自由组合起来。但是还是有区分几大类。

首先我们要写这么一个方法,名为TestJob,下面的例子都是执行这个方法的。方法里也是要引用FluentScheduler,并且这个方法还要继承FluentScheduler的IJob。这个定时任务呢大概就是创建一个文件,然后文件里输出当前的时间。

C#定时任务(二)_第1张图片

第一:立即执行计划任务,并根据指定时间间隔执行一次计划任务。

就是说只要当前的项目一启动就立刻执行这个定时任务,并且根据指定时间间隔执行一次计划任务,这个指定的时间间隔根据自己的需求,可以是秒、分、时、天、月、年等。

例子:Schedule().ToRunNow().AndEvery(1).Seconds();

 

 

    第二:延迟一个指定时间间隔执行一次计划任务。

使用这个时,项目一启动时不会立刻执行该定时任务,而是延迟到你指定的一个时间后再执行,然后就每隔一个你指定的时间间隔执行一次该定时任务。时间也可以是秒、分、时、天、月、年等。

例子:Schedule().ToRunOnceIn(10).Seconds();

//项目启动10秒后执行TestJob,然后每隔10秒钟执行一遍TestJob这个方法。

    第三:在一个指定时间执行计划任务。

你可以指定在什么时候执行这一个计划任务。

例子一:Schedule().ToRunEvery(1).Hours().At(10);//在每个小时的第十分钟执行。

例子二:Schedule().ToRunEvery(1).Days().At(3,00);//在每天的凌晨3点执行。

    这些都是可以按需求搭配的。

例如每n年的第几天的什么时候

例子一:Schedule().ToRunEvery(1).Years().On(5);// 每年的第五天。

例子二:Schedule().ToRunEvery(1).Years().On(5).At(12, 00);

//每年的第五天的12点。

例子三:Schedule().ToRunEvery(1).Months().On(1).At(12,0);

//每n个月的第一天的12点。

例子三:Schedule().ToRunEvery(1).Months().OnTheFirst(DayOfWeek.Friday).At(15, 0);

// 每n月的第一个星期的星期5 的15:0执行。

    第四:可以同时执行多个定时任务。

例子一:

Schedule().AndThen().ToRunEvery(1).Months().OnTheFirst(DayOfWeek.Friday).At(15, 0);

//每n月的第一个星期的星期5 的15:0执行  CleanJob和TestJob。

    我们不仅仅可以这样执行定时任务,还可以直接在MyRegistry里面写需要执行的代码。不过想要写下图的这个创建文件再把时间写进文件里的定时任务也要添加using System.IO和using System.Text这两个using。

C#定时任务(二)_第2张图片

 

 

 

 

 

你可能感兴趣的:(C#定时任务(二))