Timer(C#)

nonamedemo發表於2007-11-01

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;

namespace TimerPRJ
{
class Timer
{
static void Main(string[] args)
{
Mytimer t = new Mytimer();//例項化
t.Interval = 1000;//間隔時間
t.Enable = true;//是否開始
t.TickEvent += new TickHandler(t_TickEvent);//訂閱該事件
t.Start();//引發該動作

}

static void t_TickEvent()//具體的時間處理
{
Console.WriteLine(DateTime.Now.ToString() );//列印當前時間
}
}
delegate void TickHandler();//委託
class Mytimer
{
public event TickHandler TickEvent;
int interval = 1000;//時間間隔為1秒
bool enable = false;
public int Interval
{
set { this.interval = value; }
get { return this.interval; }
}
public bool Enable
{
set { this.enable = value; }
get { return this.enable; }
}

public void Start()//開始方法
{

while (this.enable == true)//只要允許走
{
Thread t = new Thread(new ThreadStart(Run));//做個線城並把run加進去
t.Start();
Thread.Sleep(this.interval);//休眠
}

}
private void Run()
{
if (TickEvent != null)//判斷時間是否為空
{
TickEvent();//如果不為空便開始
}
}


}
}

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10395457/viewspace-980394/,如需轉載,請註明出處,否則將追究法律責任。

相關文章