System.Timers.Timer 控制问题
代码如下:
private System.Timers.Timer mytimer1;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
{
count = 0;
Session["test"] = String.Empty;
mytimer1 = new System.Timers.Timer(2000);
mytimer1.Elapsed += new System.Timers.ElapsedEventHandler(timer1_Elapsed);
mytimer1.AutoReset = true;
mytimer1.Enabled = true;
GC.KeepAlive(mytimer1);
}
}
private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
count++;
Session["test"] += "第 " + count + " 秒<br>";
}
问题:
1、timer能准确执行timer1_Elapsed事件,但启动计时器以后不知道如何停止他
2、如果在同一浏览器中打开多个此页面,每打开一个,就会实例化一个新的计时器,同时旧的计时器仍在工作
不知道通过什么方法能够停止计时器或回收计时器?
望能得到有经验的开发者指点,谢谢!