ASP.NET 定時(shí)執(zhí)行任務(wù)(定時(shí)器)
[日期:2010-12-15] 來(lái)源:Net探索者 作者:未知 [字體:大 中 小]
服務(wù)器端采用C#語(yǔ)法:
1.在Global.asax文件中導(dǎo)入命名空間
<%@ Import Namespace="System.Timers" %>
2.Global.asax文件中的Application_Start()方法內(nèi)寫如下代碼:
System.Timers.Timer objTimer = new Timer();
objTimer.Interval = 時(shí)間; //這個(gè)時(shí)間單位毫秒,比如10秒,就寫10000
objTimer.Enabled = true;
objTimer.Elapsed += new ElapsedEventHandler(objTimer_Elapsed);
3.Global.asax文件中添加一個(gè)方法
void objTimer_Elapsed(object sender, ElapsedEventArgs e)
{
//這個(gè)方法內(nèi)實(shí)現(xiàn)你想做的事情。
//例如:修改Application的某一個(gè)值等等。
}
以上3步則可以在指定
1.using System;
2.using System.Timers;
3.namespace 定時(shí)器ConsoleApplication1
4.{
5.class Class1
6.{
7. [STAThread]
8. static void Main(string[] args)
9. {
10. System.Timers.Timer aTimer = new System.Timers.Timer();
11. aTimer.Elapsed += new ElapsedEventHandler(TimeEvent);
12. // 設(shè)置引發(fā)時(shí)間的時(shí)間間隔 此處設(shè)置為1秒(1000毫秒)
13. aTimer.Interval = 1000;
14. aTimer.Enabled = true;
15. Console.WriteLine("按回車鍵結(jié)束程序");
16. Console.WriteLine(" 等待程序的執(zhí)行......");
17. Console.ReadLine();
18. }
19. // 當(dāng)時(shí)間發(fā)生的時(shí)候需要進(jìn)行的邏輯處理等
20.// 在這里僅僅是一種方式,可以實(shí)現(xiàn)這樣的方式很多.
21.private static void TimeEvent(object source, ElapsedEventArgs e)
22. {
23. // 得到 hour minute second 如果等于某個(gè)值就開始執(zhí)行某個(gè)程序。
24. int intHour = e.SignalTime.Hour;
25. int intMinute = e.SignalTime.Minute;
26. int intSecond = e.SignalTime.Second;
27. // 定制時(shí)間; 比如 在10:30 :00 的時(shí)候執(zhí)行某個(gè)函數(shù)
28. int iHour = 10;
29. int iMinute = 30;
30. int iSecond = 00;
31. // 設(shè)置 每秒鐘的開始執(zhí)行一次
32. if( intSecond == iSecond )
33. {
34. Console.WriteLine("每秒鐘的開始執(zhí)行一次!");
35. }
36. // 設(shè)置 每個(gè)小時(shí)的30分鐘開始執(zhí)行
37. if( intMinute == iMinute && intSecond == iSecond )
38. {
39. Console.WriteLine("每個(gè)小時(shí)的30分鐘開始執(zhí)行一次!");
40. }
41. // 設(shè)置 每天的10:30:00開始執(zhí)行程序
42. if( intHour == iHour && intMinute == iMinute && intSecond == iSecond )
43. {
44. Console.WriteLine("在每天10點(diǎn)30分開始執(zhí)行!");
45. }
46. }
47.}
48.}
時(shí)間間隔執(zhí)行這個(gè)objTimer_Elapsed()方法,即達(dá)到你要得效果
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)
點(diǎn)擊舉報(bào)。