我在實驗中發現在 ASP.NET 中可以使用計時器(Timer)完成一些定時動作。這一點可能會對我們的一些 Web 程序有益。
下面首先介紹我測試使用的一個例子:
首先在 global.asax 中的 Application_OnStart 事件過程中定義計時器,代碼如下:
[VB.NET] global.asax
<%@ import Namespace="System.Timers" %>
<script runat="server">
Sub Application_OnStart(sender As Object, e As EventArgs)
' 創建一個計時器,單位:毫秒
Dim aTimer As New System.Timers.Timer(10000)
' 將 Fresher 指定為計時器的 Elapsed 事件處理程序
AddHandler aTimer.Elapsed, AddressOf Fresher
' AutoReset 屬性為 true 時,每隔指定時間循環一次;
' 如果為 false,則只執行一次。
aTimer.AutoReset = True
aTimer.Enabled = True
' 先給 Application("TimeStamp") 指定一個初值
Application.Lock()
Application("TimeStamp") = DateTime.Now.ToString()
Application.UnLock()
End Sub
Sub Fresher(sender As Object, e As ElapsedEventArgs)
Application.Lock()
Application("TimeStamp") = DateTime.Now.ToString()
Application.UnLock()
End Sub
</script>
然後我們簡單寫一個 test.aspx 來查看 Application("TimeStamp") 的值。代碼如下:
[VB.NET] test.aspx
<%
Response.Write(Application("TimeStamp"))
%>
< meta http-equiv="Refresh" content="3;
url=http://www.cenpok.net">