zoukankan      html  css  js  c++  java
  • Qrartz.net 在core上的学习记录 2、使用Corn表达式+给job传参数

    1、使用corn表达式

                ITrigger trigger2 = TriggerBuilder.Create()
                                           .WithIdentity("mytrigger", "group1")
                                           .StartNow()
                                           .WithCronSchedule("/5 * * ? * *")    //时间表达式,5秒一次     
                                           .Build();

    2、传参数

                IJobDetail job2 = JobBuilder.Create<DumbJob>()
                                  .WithIdentity("myJob", "group1")
                                  .UsingJobData("jobSays", "Hello World!")
                                  .Build();

    3、接收参数

            async Task IJob.Execute(IJobExecutionContext context)
            {
                JobDataMap dataMap = context.JobDetail.JobDataMap;
                string content = dataMap.GetString("jobSays");
                await Console.Out.WriteLineAsync("作业执行,jobSays:" + content);
            }

    完整代码:

    public class DumbJob : IJob
        {
            /// <summary>
            ///  context 可以获取当前Job的各种状态。
            /// </summary>
            /// <param name="context"></param>
            async Task IJob.Execute(IJobExecutionContext context)
            {
    
                JobDataMap dataMap = context.JobDetail.JobDataMap;
    
                string content = dataMap.GetString("jobSays");
    
                await Console.Out.WriteLineAsync("作业执行,jobSays:" + content);
            }
        }
        class Program
        {
            static void Main(string[] args)
            {
                IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler().Result;
    
                scheduler.Start();       //开启调度器
    
                ITrigger trigger2 = TriggerBuilder.Create()
                                           .WithIdentity("mytrigger", "group1")
                                           .StartNow()
                                           .WithCronSchedule("/5 * * ? * *")    //时间表达式,5秒一次     
                                           .Build();
    
                IJobDetail job2 = JobBuilder.Create<DumbJob>()
                                  .WithIdentity("myJob", "group1")
                                  .UsingJobData("jobSays", "Hello World!")
                                  .Build();
                scheduler.ScheduleJob(job2, trigger2);
    
                Console.Read();
            }
        }
  • 相关阅读:
    c++ 中pair类模板的用法详解
    求解Catalan数,(大数相乘,大数相除,大数相加)
    POJ--2823--Sliding Window----单调队列问题
    POJ2796 Feel Good -- 单调队列
    Graham扫描法 --求凸包
    山东理工大学第七届ACM校赛-G 飞花的传送门
    NKOJ1236 a^b (数论定理的应用)
    大数相减 C语言
    SPFA ----模板 O(kE) (k一般不超过2)
    C++大数相加
  • 原文地址:https://www.cnblogs.com/wjx-blog/p/14543278.html
Copyright © 2011-2022 走看看