每隔几分钟在global.asax中执行一次方法

时间:2012-07-06 01:42:12

标签: c# asp.net multithreading timer webserver

每隔x分钟在Global.asax文件中执行方法的最有效方法是什么?有没有办法让ASP.NET服务器运行一个后台线程,在一段经过的时间后触发一个tick事件?

3 个答案:

答案 0 :(得分:10)

你可以在Global.asax的Application_Start中有一个计时器,但这不是很灵活,因为你需要向应用程序请求启动计时器。但是这样做有危险,正如Haacked所详述的那样:

更好的方法是使用一个Web服务作为ASP.NET应用程序的接口,并拥有一个按预定的时间间隔调用Web服务的Windows服务:

此处有更多详情:

答案 1 :(得分:0)

答案 2 :(得分:-1)

System.Timers.Timer对象放在Application_Start ()中的Global.asax

http://msdn.microsoft.com/en-us/library/system.timers.timer.aspx