Quartz.NET 无法启动多个作业

问题描述

我已经实现了以下代码来使用 Quartz 管理计划作业。 Evrything 在一项工作中运行良好,但如果我尝试添加另一项工作,它只会被忽略而不执行。

public class JobScheduler
{
    public static async System.Threading.Tasks.Task StartJobsAsync()
    {
        NameValueCollection props = new NameValueCollection
        {
            { "quartz.serializer.type","binary" }
        };
        StdSchedulerFactory factory = new StdSchedulerFactory(props);

        // get a scheduler
        IScheduler sched = await factory.GetScheduler();
        await sched.Start();

        IJobDetail importerJob = JobBuilder.Create<ImporterJob>().Build();
        ITrigger importerTrigger = TriggerBuilder.Create()
         .WithIdentity("trigger","group")
         .StartNow()
         .WithSimpleSchedule(x => x
             .WithIntervalInSeconds(300)
             .RepeatForever())
         .Build();

        IJobDetail teFetchJob = JobBuilder.Create<TradingEconomicsDataFetchJob>().Build();
        ITrigger teFetchTrigger = TriggerBuilder.Create()
         .WithIdentity("trigger","group")
         .StartNow()
         .WithSchedule(CronScheduleBuilder.DailyAtHourAndMinute(11,15))
         .Build();

        await sched.ScheduleJob(importerJob,importerTrigger);
        await sched.ScheduleJob(teFetchJob,teFetchTrigger); //this is never executed!
    }
}

调度程序从 Global.asax 文件调用

    void Application_Start(object sender,EventArgs e)
    {
        System.Web.Http.GlobalConfiguration.Configure(WebApiConfig.Register);

        Logging.ConfigureNLog();

        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);

        JobScheduler.StartJobsAsync();
    }

Quartz 上的日志如下:

2021-03-08 11:10:02.5359|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:10:28.4381|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:10:54.5953|INFO||Using object serializer: Quartz.Simpl.BinaryObjectSerializer,Quartz
2021-03-08 11:10:54.6473|DEBUG||TaskSchedulingThreadPool configured with max concurrency of 10 and TaskScheduler ThreadPoolTaskScheduler.
2021-03-08 11:10:54.6583|INFO||Initialized Scheduler Signaller of type: Quartz.Core.SchedulerSignalerImpl
2021-03-08 11:10:54.6733|INFO||Quartz Scheduler v.3.0.7.0 created.
2021-03-08 11:10:54.6733|INFO||RAMJobStore initialized.
2021-03-08 11:10:54.6843|INFO||Scheduler Meta-data: Quartz Scheduler (v3.0.7.0) 'QuartzScheduler' with instanceId 'NON_CLUSTERED'
  Scheduler class: 'Quartz.Core.QuartzScheduler' - running locally.
  NOT STARTED.
  Currently in standby mode.
  Number of jobs executed: 0
  Using thread pool 'Quartz.Simpl.DefaultThreadPool' - with 10 threads.
  Using job-store 'Quartz.Simpl.RAMJobStore' - which does not support persistence. and is not clustered.

2021-03-08 11:10:54.6843|INFO||Quartz scheduler 'QuartzScheduler' initialized
2021-03-08 11:10:54.6843|INFO||Quartz scheduler version: 3.0.7.0
2021-03-08 11:10:54.6843|INFO||Scheduler QuartzScheduler_$_NON_CLUSTERED started.
2021-03-08 11:10:54.7033|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:10:54.7413|DEBUG||Batch acquisition of 1 triggers
2021-03-08 11:10:54.7553|DEBUG||Producing instance of Job 'DEFAULT.b330f265-47ca-4387-b0e4-8f6fda416a86',class=ImporterJob
2021-03-08 11:10:54.7633|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:10:54.8023|DEBUG||Calling Execute on job DEFAULT.b330f265-47ca-4387-b0e4-8f6fda416a86
2021-03-08 11:11:00.0964|DEBUG||Trigger instruction : NoInstruction
2021-03-08 11:11:24.2356|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:11:49.4608|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:12:16.1231|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:12:44.9434|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:13:14.7546|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:13:40.9129|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:14:08.7782|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:14:35.8354|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:15:04.0067|DEBUG||Batch acquisition of 0 triggers
2021-03-08 11:15:29.1489|DEBUG||Batch acquisition of 1 triggers

我的代码有什么问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...