我在實驗中發現在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">