0

我需要导入大量产品提要,这需要花费大量时间。我尝试将 importfeeds.aspx 页面上的 Server.ScriptTimeout 设置为一个小时,并按顺序和异步执行我的任务。

但我更想要的是几个较小的应用程序,我可以安排它们运行以执行单个任务。也因为当一项任务失败时,我仍然想执行其他任务,因为各个任务不相互依赖。

解决这个问题的最佳方法是什么?

  1. 创建单个网页,每个网页都执行任务并通过 Windows 任务调度程序安排呼叫?(似乎可以解决)
  2. ……?

谢谢!

4

1 回答 1

0

使用global.asax
global.asax中,应用程序启动时会调用方法Application_Start 。在Application_Start
方法 中运行一个线程,并在Application_End中终止该线程。<br /> 下面是示例代码:

Public Class job
    Public Property StopThread As Boolean = False
    Public Sub DoJob()

        Do While Not StopThread
            If Now.Minute = 0 Then
                'Do Sync Work
            End If
            Threading.Thread.Sleep(1000 * 60)
        Loop
    End Sub
End Class



Public Class Global_asax
    Inherits HttpApplication

    Private j As job
    Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)

        j = New job
        Dim JobThread As System.Threading.Thread
        JobThread = New Threading.Thread(AddressOf j.DoJob)
        JobThread.Start()

    End Sub


    Sub Application_End(ByVal sender As Object, ByVal e As EventArgs)
        j.StopThread = True
    End Sub
End Class
于 2013-05-08T05:42:23.610 回答