Core 定时任务之TimeJob

Core 定时任务之TimeJob

 

第一:引入NuGet包:

Install-Package Pomelo.AspNetCore.TimedJob -Version 1.1.0-rtm-10026

第二:

在StartUp 中注册Job:

复制代码
 public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();
            services.Configure<AppSettings>(Configuration.GetSection("AppSettings"));


            services.AddTimedJob();//使用job
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseTimedJob();/////////////////使用Job
            app.UseMvc();
        }
    }
复制代码

第三写个类:

复制代码
 public class TimeJob: Job
    {
        // Begin 起始时间;Interval执行时间间隔,单位是毫秒,建议使用以下格式,此处为3小时;
        //SkipWhileExecuting是否等待上一个执行完成,true为等待;
        [Invoke(Begin = "2019-8-3 10:30:00", Interval = 1000*10 , SkipWhileExecuting = true)]
        public void Run()
        {
            //Job要执行的逻辑代码
            Console.WriteLine(DateTime.Now);            
        }
    }
//程序只要运行起来,就会自动出发这个TimeJob类,只需要把定时做的业务放在类里就🆗了
复制代码
posted @ 2021-02-04 21:17  dreamw  阅读(311)  评论(0编辑  收藏  举报