2012-11-07 52 views
0

可能重複:
Quartz.Net scheduler works locally but not on remote host觸發不火的Quartz.net網站

當我使用此代碼:

工作代碼:

Public Class ImportJob 
Implements IJob 
Public Sub Execute(context As IJobExecutionContext) Implements IJob.Execute 
    '''some code 
End Sub 
End Class 

觸發代碼:

Public Class ScheduleManager 
Public Shared Property Scheduler As IScheduler 
    Public Sub RunTrigger() 
    Dim startTime As DateTimeOffset 
     startTime = DateBuilder.DateOf(20, 0, 0) 

    Dim scheduler = GetScheduler 
    Dim job As IJobDetail = JobBuilder.Create(Of ImportJob)().WithIdentity("jobname").Build() 
    Dim trigger As ITrigger 
     trigger = TriggerBuilder.Create().ForJob(job).WithIdentity("som Name").WithDescription("some Desc").StartAt(startTime).WithSimpleSchedule(Function(x) x.WithIntervalInHours(24).RepeatForever).Build() 

    scheduler.ScheduleJob(job, trigger) 
    scheduler.Start() 
End Sub 
Public ReadOnly Property GetScheduler As IScheduler 
    Get 
     If Scheduler Is Nothing Then 
      Scheduler = New StdSchedulerFactory().GetScheduler() 
     End If 
     Return Scheduler 
    End Get 
End Property 

End Class 

,並在全球:

Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs) 
    ' Code that runs on application startup 
    Dim schde As New ScheduleManager 
    schde.RunTrigger() 
End Sub 

我用這個觸發器和工作調度,當我使用該代碼觸發必火20:00,但引發不火? 謝謝。

回答

1

我相信這是Quartz.Net scheduler works locally but not on remote host的副本。因此,請使用對調度程序工廠的全局引用,並瞭解應用程序池回收。

+0

任何想法[回收或重新啓動後無法在IIS上保持活動Web應用程序](http://stackoverflow.com/questions/33593602/cannot-keep-alive-web-application-on-iis-after-recycling-或者,重新啓動)。請? –