zoukankan      html  css  js  c++  java
  • quartz定时器

    using Quartz;
    using Quartz.Impl;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace quartz
    {
        class Program
        {
            static void Main(string[] args)
            {
               
                ReportJobScheduler.Start();  //启动
                Console.WriteLine("启动心跳程序");
                Console.ReadKey();
    
            }
        }
    }
    using Quartz;
    using Quartz.Impl;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace quartz
    {
        /// <summary>
        /// 提现金额结算Job
        /// </summary>
        public class AutoAuditJob : IJob
        {
           
            /// <summary>
            /// 构造器
            /// </summary>
            public AutoAuditJob()
            {
                
            }
            /// <summary>
            /// 心跳程序
            /// </summary>
            /// <param name="context"></param>
            /// <returns></returns>
            public Task Execute(IJobExecutionContext context)
            {
                return Task.Run(() =>
                {
                    timer1_Elapsed();
                });
            }
    
            /// <summary>
            /// 定时器 调用的方法
            /// </summary>
            /// <returns></returns>
            public async void timer1_Elapsed()
            {
                ///这里放你实际调用的方法
                var time = DateTime.Now;
                Console.WriteLine("现在是时间:"+time);
                
                
            }
        }
    
    
        /// <summary>
        /// 初始化程序
        /// </summary>
        public class ReportJobScheduler
        {
            /// <summary>
            /// 初始化程序
            /// </summary>
            public static async void Start()
            {
                IScheduler scheduler = await StdSchedulerFactory.GetDefaultScheduler();
                await scheduler.Start();
                IJobDetail job = JobBuilder.Create<AutoAuditJob>().Build();
                ITrigger trigger = TriggerBuilder.Create()
                .WithIdentity("triggerName", "groupName")
                .WithSimpleSchedule(t =>
                  t.WithIntervalInSeconds(2) ///设置触发时间
                   .RepeatForever())
                   .Build();
                await scheduler.ScheduleJob(job, trigger);
            }
        }
    }

    代码可以直接复制使用,需要nugget中安装quartz。

    得之坦然,失之淡然,争其必然,顺其自然
  • 相关阅读:
    如何解决Unsupported major.minor version 52.0问题?
    无法将 Ethernet0 连接到虚拟网络”VMnet0″ 详细信息可以在 vmware.log 文件中找到未能连接虚拟机Ethernet0
    安卓逆向入门教程(一)
    go数据类型 slice map
    Tomcat服务配置及性能优化
    RabbitMQ消息可靠性投递
    LevelDb引擎
    【前端】Vue.js前端框架
    【PHP】PHP 微服务协程框架Swoft
    Supervisor进程管理工具
  • 原文地址:https://www.cnblogs.com/leegj/p/11155573.html
Copyright © 2011-2022 走看看