博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.Net Core 定时任务TimeJob
阅读量:6253 次
发布时间:2019-06-22

本文共 1719 字,大约阅读时间需要 5 分钟。

转载自:

定时任务 

Pomelo.AspNetCore.TimedJob是一个.NET Core实现的定时任务job库,支持毫秒级定时任务、从数据库读取定时配置、同步异步定时任务等功能。

由.NET Core社区大神兼前微软MVP  (入职微软之后就卸任MVP…)开发维护,不过好像没有开源,回头问下看看能不能开源掉。

作者自己的介绍文章: 

Startup.cs相关代码

我这边使用的话,首先肯定是先安装对应的包:Install-Package Pomelo.AspNetCore.TimedJob -Pre

然后在Startup.cs的ConfigureServices函数里面添加Service,在Configure函数里面Use一下。

// This method gets called by the runtime. Use this method to add services to the container.publicvoidConfigureServices(IServiceCollection services){    // Add framework services.    services.AddMvc();    //Add TimedJob services    services.AddTimedJob();} publicvoidConfigure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory){    //使用TimedJob    app.UseTimedJob();    if (env.IsDevelopment())    {        app.UseDeveloperExceptionPage();        app.UseBrowserLink();    }    else    {        app.UseExceptionHandler("/Home/Error");    }    app.UseStaticFiles();    app.UseMvc(routes =>    {        routes.MapRoute(            name: "default",            template: "{controller=Home}/{action=Index}/{id?}");    });    Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);}

Job相关代码

接着新建一个类,明明为XXXJob.cs,引用命名空间using Pomelo.AspNetCore.TimedJob,XXXJob继承于Job,添加以下代码。

public class AutoGetMovieListJob:Job {          // Begin 起始时间;Interval执行时间间隔,单位是毫秒,建议使用以下格式,此处为3小时;     //SkipWhileExecuting是否等待上一个执行完成,true为等待;     [Invoke(Begin = "2016-11-29 22:10", Interval = 1000 * 3600*3, SkipWhileExecuting =true)]     publicvoidRun()     {          //Job要执行的逻辑代码                   //LogHelper.Info("Start crawling");         //AddToLatestMovieList(100);         //AddToHotMovieList();         //LogHelper.Info("Finish crawling");     }}

 

转载自:http://www.jkeabc.com/432165.html

你可能感兴趣的文章
为什么getline()后要两次回车????(将输入的字符串按单词倒序输出)
查看>>
Dictionary和数组查找效率对比
查看>>
alias命令详情
查看>>
iOS - UITouch
查看>>
学习C++语言的50条忠告
查看>>
mysql的innodb中事务日志ib_logfile
查看>>
大数乘法?
查看>>
C语言博客作业03--函数
查看>>
96. Unique Binary Search Trees(I 和 II)
查看>>
飘窗原生js效果
查看>>
自定义异步加载资源插件
查看>>
Mongodb windows 安装
查看>>
easyui combobox两种不同的数据加载方式
查看>>
报错:该页必须具有 <%@ webservice class="MyNamespace.MyClass" ... %> 指令。
查看>>
Smarty配置与实例化
查看>>
***Redis hash是一个string类型的field和value的映射表.它的添加、删除操作都是O(1)(平均)。hash特别适合用于存储对象...
查看>>
抽象方法和接口区别
查看>>
Siege——多线程编程最佳实例
查看>>
c# 生成 验证码
查看>>
Selenium学习(4) 键盘操作
查看>>