JobSchedulerService.cs 769 B

123456789101112131415161718192021222324252627282930
  1. using Quartz;
  2. using Quartz.Impl;
  3. using YiSha.Business.AutoJob.IService;
  4. namespace YiSha.Business.AutoJob.Service
  5. {
  6. public class JobSchedulerService : IJobSchedulerService
  7. {
  8. private static object lockHelper = new object();
  9. private static IScheduler scheduler = null;
  10. public IScheduler GetScheduler()
  11. {
  12. lock (lockHelper)
  13. {
  14. if (scheduler != null)
  15. {
  16. return scheduler;
  17. }
  18. else
  19. {
  20. ISchedulerFactory schedf = new StdSchedulerFactory();
  21. IScheduler sched = schedf.GetScheduler().Result;
  22. return sched;
  23. }
  24. }
  25. }
  26. }
  27. }