C#定时任务之FluentScheduler】的更多相关文章

一.业务需求 平台首页,有几个指标统计,产品不要求实时性,觉得一天更新一次可以接受. 最后决定用FluentScheduler定时执行统计,redis缓存结果. 每天晚上1点进行定时任务统计,将统计结果缓存到redis中,业务接口直接从reids里拿统计数据. 二.开始撸代码 方式一:多个任务 + 不同时间段执行(这个没有实现,大家可以使用 一个从0点开始的分钟数,秒数等,自定义一个接口,根据规则去调用Schedule中的方法) using System; using System.Linq;…
FluentScheduler介绍 github地址:https://github.com/fluentscheduler/FluentScheduler FluentScheduler是一个简单的任务调度框架,使用起来非常方便,这个框架也是我在搜索iis预加载的时候偶然间发现的,立马拿来试用一下,感觉爽呆了,当然还有Quarz.Net之类的其他任务管理框架,不过看配置似乎有点麻烦,反正除了timer我啥也没用过... 之前还花费了很长一段时间自己写了一套定时任务的框架,如今看到FluentSc…
Windows Service 服务 创建Windows Service 项目 创建一个Windows Service项目,并将项目名称改为 TaskWindowService 在解决方案资源管理器内将Service1.cs改为TaskService.cs 在服务启动和结束时,记录日志 protected override void OnStart(string[] args) { LogHelper.Log("服务启动!"); } protected override void On…
FluentScheduler是.NET开源处理定时任务组件 1.任务的创建注册 public static void TaskActionByMinutes(Action action, int count,string TaskName) { FluentScheduler.JobManager.AddJob(action, t => { t.WithName(TaskName).ToRunNow().AndEvery(count).Minutes(); }); } FluentSchedu…
在日常项目里通常会遇到定时执行任务的需求,也就是定时器..NET Framework里关于定时器的类有3个,分别是System.Windows.Forms.Timer.System.Timers.Timer.System.Threading.Timer.这三个类用法灵活,也各有特点,应对简单的定时需求,用起来很轻松.如果面对复杂应用,比如任务影响窗体UI时就 要考虑多线程操作,多线程就避免不了考虑线程安全问题,这时候用起来就比较麻烦. 使用FluentScheduler组件,相对来说就轻松多了.…
在C#WINFORM或者是ASP.NET的WEB应用程序中,根据各种定时任务的需求,比如:每天的数据统计,每小时刷新系统缓存等等,这个时候我们得应用到定时器这个东东. .NET Framework有自带的timer,但这个类只能完成一些简单的定时操作,比如间隔多久执行什么操作.遇到一些复杂的定时任务,如从当前时间开始,多少时间后间隔重复执行,timer类处理起来就相对困难了.经过多番查找搜索,终于找到一下比较好用的任务定时器–FluentScheduler,你可以通过Nuget来引用,用程序包管…
在C#WINFORM或者是ASP.NET的WEB应用程序中,根据各种定时任务的需求,比如:每天的数据统计,每小时刷新系统缓存等等,这个时候我们得应用到定时器这个东东. .NET Framework有自带的timer,但这个类只能完成一些简单的定时操作,比如间隔多久执行什么操作.遇到一些复杂的定时任务,如从当前时间开始,多少时间后间隔重复执行,timer类处理起来就相对困难了.经过多番查找搜索,终于找到一下比较好用的任务定时器–FluentScheduler,你可以通过Nuget来引用,用程序包管…
第一步添加引用 GitHub源码地址 与详细用法 https://github.com/fluentscheduler/FluentScheduler 下面开始简单的实现 /// <summary> /// 定时任务启动方法 /// </summary> public class Tasking : Registry { public Tasking() { //添加一个从此刻开始定时执行的任务,每个一秒执行一次 Schedule<SampleJob>().ToRunN…
源代码地址: https://github.com/fluentscheduler/FluentScheduler 使用NuGet安装FluentScheduler 这是我实际项目中用到的代码,也可看此博主的文章http://www.cnblogs.com/mafly/p/FluentScheduler.html 在Controller中写 public class TimedTask : IJob, IRegisteredObject { private readonly object _lo…
1.Nuget 安装包 2.创建3个不同的任务 public class MyJob : IJob { void IJob.Execute() { Trace.WriteLine("现在时间是:" + DateTime.Now); } } public class MyOtherJob : IJob { void IJob.Execute() { Trace.WriteLine("这是另一个 Job ,现在时间是:" + DateTime.Now); } } pub…