<%@ Application Language="C#" %>
<script runat="server">
public System.Timers.Timer timer;
void Application_Start(object sender, EventArgs e)
{
// 在应用程序启动时运行的代码
//1分钟为一个循环单位
timer = new System.Timers.Timer(10000);//60000
//动态添加timer的事件
timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed);
timer.AutoReset = true; //如果为假只循环一次
timer.Enabled = true; //打开计数器
Application.Lock();
Application["TimeStamp"] = "1";
Application.UnLock();
}
private void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
Application.Lock();
int min = Convert.ToInt16(Application["TimeStamp"]) + 1;
Application["TimeStamp"] = min.ToString();
Application.UnLock();
if (min == 500)
{//时间到
timer.Enabled = false;
}
}
void Application_End(object sender, EventArgs e)
{
// 在应用程序关闭时运行的代码
timer.Dispose();
}
void Application_Error(object sender, EventArgs e)
{
// 在出现未处理的错误时运行的代码
}
void Session_Start(object sender, EventArgs e)
{
// 在新会话启动时运行的代码
}
void Session_End(object sender, EventArgs e)
{
// 在会话结束时运行的代码。
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
// 或 SQLServer,则不会引发该事件。
}
</script>