Timer(C#)

来源:互联网 发布:苹果电脑软件卸载不了 编辑:程序博客网 时间:2024/05/19 04:02
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();//如果不为空便开始
}
}


}
}

原创粉丝点击