日期:2014-05-17  浏览次数:20876 次

Quartz.Net中设置的时间触发比需要的时间长,引起的重复触发。
我现在用的是2.0.1版本 我有一个任务 有可能需要1-X秒(X秒代表这个时间是不确定的 有可能要1秒 也有可能100秒 甚至更长时间)才能处理完,,但是我设置的触发是3秒  怎么能保证我是做完了第一次 然后等待3秒再执行呢??
我目前的设置定时的代码如下:、

  public void Start(object sender, EventArgs e)
        {
            try
            {
                // 在应用程序启动时运行的代码                                                                                
                ISchedulerFactory sf = new StdSchedulerFactory();
                IScheduler sched = sf.GetScheduler();
                //新建一个计划任务                                                                                           
                IJobDetail job = JobBuilder.Create<Test01>()
                    .WithIdentity("job1", "group1").Build();

                //该任务执行时间为每隔10秒中,如果要每隔5分钟可以这样0 0/5 * * * * ?                                        
                //这样的格式表示每隔5分钟整执行                                                                             
                ITrigger trigger = TriggerBuilder.Create()
                    .WithIdentity("trigger1", "group1")
                    .WithSchedule(CronScheduleBuilder.CronSchedule(new CronExpression("0/1