• 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服务上

  • 相关阅读:
    SQL语句中的左连接、右连接、内连接的理解心得
    MySQL+Java使用心得(1)
    【转】国内常见WEB安全扫描产品概述
    [C puzzle book] operators
    【Python】Symbol Review
    A function for new storage space of string
    【SRX】折腾了半天终于我的那对SRX210 升级到了 12.1R1.9
    [C puzzle book] Control Flow
    [C puzzle book] types
    荷兰TAC的需求
  • 原文地址:https://www.cnblogs.com/huanglin101/p/5780684.html
Copyright © 2020-2023  润新知