quartz.net 使用(一)-执行定时计划任务

一、使用nuget安装所需要的包

Install-Package Quartz

二、实现自己的job继承IJob

public class FirstJob : IJob
    {
     
        public void Execute(IJobExecutionContext context)
        {
           
            try
            {               
                Common.LogHelper.WriteLog(DateTime.Now.ToString() + ":执行计划开始");//写log
                 //你需要执行的计划任务               
            }
            catch (Exception ex)
            {             
                Common.LogHelper.WriteError(DateTime.Now.ToString() + ":执行计划出现了错误;", ex);               
                throw;
            }
        }

 三、启动计划任务

 public void Start()
        {
            try
            {
                IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();//获取默认的scheduler
                string quartzExperssion= ConfigurationManager.AppSettings["QuartzExpression"];
                if (string.IsNullOrWhiteSpace(quartzExperssion))
                {
                    quartzExpression = "0 0 2 * * ?";//默认成凌晨两点
                }
                scheduler.Start();
                IJobDetail job = JobBuilder.Create<HistoryDataMoveJob>()
                   .WithIdentity("我的计划", "计划")
                   .Build();

                ITrigger trigger = TriggerBuilder.Create()
                    .WithIdentity("我的计划", "计划")
                    .StartNow()
                    .WithCronSchedule(clocktimeExpression)//0 0 12 * * ?
                    .Build();

                scheduler.ScheduleJob(job, trigger);
                Common.LogHelper.WriteLog(DateTime.Now.ToString() + ":启动任务计划");
            }
            catch (Exception ex)
            {
                Common.LogHelper.WriteError(DateTime.Now.ToString() + ":启动计划任务失败", ex);
            }
        }

 四、本来是想寄宿在IIS上的,结果发现,IIS设置了闲置回收,quartz进程被IIS回收杀掉了,并没有执行,系统原因不能关掉闲置回收功能,所以将quartz又改造,寄宿到windows服务上

转载于:https://www.cnblogs.com/huanglin101/p/5780684.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值