ASP.NET中使用计数器(Timer)的方法

asp.net 中使用计数器有两种方法, 第一种是用javascript 下边是我测试过的第二种方法

首先把timer 定义成 Global 的成员变量
System.Timers.Timer timer;


Application_Start 函数的代码:
protected void Application_Start(Object sender, EventArgs e)
{
         
//1分钟为一个循环单位
         System.Timers.Timer timer = new System.Timers.Timer (60000); 
         
//动态添加timer的事件
         timer.Elapsed +=new System.Timers.ElapsedEventHandler(timer_Elapsed);
         timer.AutoReset 
= true//如果为假只循环一次
         timer.Enabled = true;  //打开计数器

         Application.Lock(); 
         Application[
"TimeCounter"= "1";
         Application.UnLock() ;
}

timer_Elapsed 函数的定义
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 == 60)
    
{//时间到
        timer.Enabled  
= false;
        Application.Lock();
        Application.Remove (
"TimeStamp");
        Application.UnLock() ;

    }

    
}






posted on 2005-08-02 14:00 ffan 阅读(1745) 评论(3)  编辑 收藏 引用 所属分类: .NET

评论

# re: ASP.NET中使用计数器(Timer)的方法 2006-10-10 11:21 牛排

Application["TimeStamp"]是在哪里定义的?我怎么没看到呢  回复  更多评论   

# re: ASP.NET中使用计数器(Timer)的方法 2007-03-15 11:26 ffan

Application["TimeStamp"]在前边赋个初值就行了  回复  更多评论   

# re: ASP.NET中使用计数器(Timer)的方法 2007-06-26 16:13 publiclll

如何关闭这个Timer?   回复  更多评论   

只有注册用户登录后才能发表评论。
<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

导航

统计

常用链接

留言簿(12)

随笔分类

随笔档案

相册

搜索

最新评论

阅读排行榜

评论排行榜