关于c#中timer类 在c#里关于定时器类就有3个:
1.定义在system.windows.forms里
2.定义在system.threading.timer类里
3.定义在system.timers.timer类里
system.windows.forms.timer是应用于winform中的,它是通过windows消息机制实现的,类似于vb或delphi中的timer控件,内部使用api settimer实现的。它的主要缺点是计时不精确,而且必须有消息循环,console application(控制台应用程序)无法使用。
system.timers.timer和system.threading.timer非常类似,它们是通过.net thread pool实现的,轻量,计时精确,对应用程序、消息没有特别的要求。              system.timers.timer还可以应用于winform,完全取代上面的timer控件。它们的缺点是不支持直接的拖放,需要手工编码。
下面举例说明,system.timers.timer定时器的用法。
using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.windows.forms;
using system.timers;
using system.runtime.interopservices;
using system.threading;
namespace timer001
{
    public partial class form1 : form
    {
        public form1()
        {
            initializecomponent();
           
        }
        //实例化timer类
        system.timers.timer atimer = new system.timers.timer();      
        private void button1_click(object sender, eventargs e)
        {
            this.settimerparam();
        }
        private void test(object source, system.timers.elapsedeventargs e)
        {     
            messagebox.show(datetime.now.tostring());           
        }
        public void settimerparam()
        {
            //到时间的时候执行事件
            atimer.elapsed += new elapsedeventhandler(test);
            atimer.interval = 1000;
            atimer.autoreset = true;//执行一次 false,一直执行true
            //是否执行system.timers.timer.elapsed事件
            atimer.enabled = true;
        }
    }
}
实现的效果是:每秒弹出系统当前时间,如下图:
以上就是c# timer 定时器应用的内容。
   
 
   