计时器设计
//Program.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading; //需要用到线程
namespace Timer
{
class Program
{
static void Main(string[] args)
{
StopWatch sw = new StopWatch();
sw.Start();
}
}
class StopWatch
{
private int Interval = 1000; //时间间隔,单位毫秒
private int Time = 0; //所显示的时间
public void Start()
{
Thread timer = new Thread(new ThreadStart(Timer)); //新建一个线程,该线程调用Timer()
timer.Start(); //启动线程
Console.CursorVisible = false; //隐藏光标
Console.ReadKey(true); //等待按任意键退出
timer.Abort(); //终止线程,用于停止秒表
}
private void Timer()
{
while (true)
{
Display(); //显示秒表计数
Thread.Sleep(Interval); //等待1秒后再执行Timer()刷新计数
Time++; //秒数加1
}
}
private void Display()
{
Console.SetCursorPosition(0, 0);
Console.Write("Time:" + Time.ToString());
}
}
}
想必看完程序大家对其中的方法已经很了解了,就不再赘述。程序可直接拷过去运行,运行结果是一个在控制台左上角显示的秒表,按任意键退出。
这个程序中可扩展的部分为Display(),可以换成执行其他操作的函数。它可以间歇地执行,以实现某种特定的功能,而它等待的时间即是由Interval决定的。
转自:http://gaofeihang.blog.163.com/blog/static/8450828520086524419527/