using Learun.Util; using Quartz; using Quartz.Impl; using System.Collections.Generic; using System.Linq; namespace Learun.Application.Scheduler { public static class BaseScheduler { //作业调度 public static IScheduler scheduler = null; /// /// 获取作业调度 /// public static void GetScheduler() { if (scheduler == null) { ISchedulerFactory schedf = new StdSchedulerFactory(); } } public static void Start() { GetScheduler(); scheduler.Start(); // 取得需要执行的任务 Job_ScheduleIBLL job_ScheduleIBLL = new Job_ScheduleBLL(); Pagination paginationobj = new Pagination(); paginationobj.page = 0; paginationobj.rows = 1000; var data = job_ScheduleIBLL.GetPageList(paginationobj, "{}"); // 设置job需要的参数 if (data != null) { List list = data.Where(t=> t.RunStatus == "running").Select(t => new JobInfo { JobName = t.JobName, JobGroup = t.JobGroup, CromExpress = t.CromExpress, TaskClass = t.TaskClass, }).ToList(); } } /// /// 关闭任务调度器 /// public static void End() { GetScheduler(); scheduler.Shutdown(true); } } }