• 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();
            }
        }
  • 相关阅读:
    小程序登录及用户信息和手机号的获取
    Node.js 获取微信JS-SDK CONFIG
    代码顺序的重要性
    七牛视频防盗链处理
    《码农翻身》读书笔记
    白夜行
    看见
    用node.js写一个jenkins发版脚本
    Node.js 使用 RSA 做加密
    七牛视频切片方案
  • 原文地址:https://www.cnblogs.com/wjx-blog/p/14543278.html
Copyright © 2020-2023  润新知