wanshenmean
6 天以前 fe2a1e74780259605cd230e6f9c629c3dd7fdf15
Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_QuartzJob/QuartzNet/SchedulerCenterServer.cs
@@ -31,6 +31,7 @@
using WIDESEAWCS_QuartzJob.DTO;
using WIDESEAWCS_QuartzJob.CustomException;
using Quartz.Impl.Matchers;
using WIDESEAWCS_Core.LogHelper;
namespace WIDESEAWCS_QuartzJob
{
@@ -49,9 +50,10 @@
        public SchedulerCenterServer(IJobFactory jobFactory)
        {
            _iocjobFactory = jobFactory;
            _scheduler = GetSchedulerAsync();
            // 使用同步上下文运行异步方法
            _scheduler = Task.Run(async () => await GetSchedulerAsync()).GetAwaiter().GetResult();
        }
        private IScheduler GetSchedulerAsync()
        private async Task<IScheduler> GetSchedulerAsync()
        {
            if (_scheduler != null)
                return this._scheduler;
@@ -66,7 +68,7 @@
                    };
                    //StdSchedulerFactory factory = new StdSchedulerFactory(collection);
                    StdSchedulerFactory factory = new StdSchedulerFactory();
                    return _scheduler = factory.GetScheduler().Result;
                    return _scheduler = await factory.GetScheduler();
                }
                catch (Exception ex)
                {
@@ -93,7 +95,7 @@
                    };
                    //StdSchedulerFactory factory = new StdSchedulerFactory(collection);
                    StdSchedulerFactory factory = new StdSchedulerFactory();
                    _scheduler = factory.GetScheduler().Result;
                    _scheduler = await factory.GetScheduler();
                }
                this._scheduler.JobFactory = this._iocjobFactory;
@@ -102,7 +104,7 @@
                {
                    //等待任务运行完成
                    await this._scheduler.Start();
                    await Console.Out.WriteLineAsync(QuartzJobInfoMessage.StartJobSuccess);
                    QuartzLogger.Info(QuartzJobInfoMessage.StartJobSuccess);
                    result = WebResponseContent.Instance.OK(QuartzJobInfoMessage.StartJobSuccess);
                    return result;
                }
@@ -176,7 +178,7 @@
                        };
                        //StdSchedulerFactory factory = new StdSchedulerFactory(collection);
                        StdSchedulerFactory factory = new StdSchedulerFactory();
                        _scheduler = factory.GetScheduler().Result;
                        _scheduler = await factory.GetScheduler();
                    }