C#/ASP.NET定时任务执行管理器组件–FluentScheduler定时器
必須JobManager初始化
方式1:
public void Start()
??????? {
??????????? JobManager.AddJob(() => FetchingData(), schedule =>
??????????? {
??????????????? schedule.ToRunEvery(1).Days().At(10, 8);
??????????? });
??????? }
?
方式2:繼承Registry
public class WebSchedule : Registry
??? {
??????? ILogger<WebSchedule> log;???????
??????? /// <summary>
??????? ///
??????? /// </summary>
??????? public WebSchedule(ILoggerFactory loggerFactory)
??????? {
??????????? log = loggerFactory.CreateLogger<WebSchedule>();
??????????? //立即執行,之后每2秒執行
??????????? Schedule(() => log.LogTrace("每分鐘執行:" + DateTime.Now)).ToRunNow().AndEvery(1).Minutes();
??????????? Schedule(() => log.LogTrace("每天執行:" + DateTime.Now)).ToRunNow().AndEvery(1).Days();
??????????? //5秒后執行一次
??????????? Schedule(() => log.LogTrace("執行一次:" + DateTime.Now)).ToRunOnceIn(5).Seconds();
??????????? Schedule(() => log.LogTrace("每天21:15執行:" + DateTime.Now))
??????????????? .ToRunEvery(1).Days().At(13, 55);
??????????? //立即執行,之后每月的第一個星期一3點再執行
??????????? Schedule(() =>
??????????? {
??????????????? log.LogTrace("job started at " + DateTime.Now);
??????????????? Thread.Sleep(10000);
??????????????? log.LogTrace("job ended at" + DateTime.Now);
??????????? }).ToRunNow().AndEvery(1).Months().OnTheFirst(DayOfWeek.Monday).At(3, 0);
??????????? //多任務
??????????? //Schedule<MyJob>().AndThen<MyOtherJob>().ToRunNow();
??????? }
??? }
調用:JobManager.Initialize(new WebSchedule(loggerFactory));
總結
以上是生活随笔為你收集整理的C#/ASP.NET定时任务执行管理器组件–FluentScheduler定时器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 轻松精通数据库管理之道——运维巡检之四(
- 下一篇: 用C#+XMI技术进行UML模型捕获