【发布时间】:2012-01-20 16:03:11
【问题描述】:
我正在开发一个使用 Global.asax 实现作业调度程序的 Web 应用程序。我已经使用线程在特定的时间内开始工作。
如果我通过 Visual Studio 运行应用程序,它可以正常工作。但是当我将它发布并部署到服务器时,线程不起作用。
请帮我解决这个问题。有没有其他选择。
请在下面找到示例代码,
protected void Application_Start()
{
Thread thread = new Thread(new ThreadStart(ThreadFunc));
thread.IsBackground = true;
thread.Name = "ThreadFunc";
thread.Start();
}
protected void ThreadFunc()
{
System.Timers.Timer t = new System.Timers.Timer();
t.Elapsed += new System.Timers.ElapsedEventHandler(TimerWorker);
t.Interval = 10000;
t.Enabled = true;
t.AutoReset = true;
t.Start();
}
protected void TimerWorker(object sender, System.Timers.ElapsedEventArgs e)
{
//work args
}
谢谢,
维杰
【问题讨论】:
-
@Ravi - 请查找已编辑的示例代码。
-
看起来不错。可能是IIS问题??为什么你不能使用服务而不是线程?作为@MK。 anwserd 在他的链接中。
标签: asp.net publish global-asax web-deployment