C#中三种定时器对象的比较

转载 2007年09月20日 09:36:00
 

·关于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类
System.Timers.Timer t = new System.Timers.Timer(10000);//实例化Timer类,设置间隔时间为10000毫秒;
t.Elapsed += new System.Timers.ElapsedEventHandler(theout);//到达时间的时候执行事件;
t.AutoReset = true;//设置是执行一次(false)还是一直执行(true);
t.Enabled = true;//是否执行System.Timers.Timer.Elapsed事件;

public void theout(object source, System.Timers.ElapsedEventArgs e)
{
MessageBox.Show("OK!");
}

相关文章推荐

C#.NET 定时器类及使用方法

在.net常用的定时器类有下面三种,使用定时器时需要设定参数,如间断时间、定时器计溢出后的回调函数、延时、开始等,定时器的的主要方法有开始、终止等,不同的定时器实现上述的方法会有一些差异,本文会针对具...
  • zhouqt
  • zhouqt
  • 2016年06月28日 22:46
  • 7801

C#定时器

在Framework中存在着4种定时器:其中分为两类, 多线程计时器 1:System.Threading.Timer 2:System.Timers.Timer 特殊目的的单线程计时器: ...

C#实现高精度定时器

这两天正在准备做一个实时控制的东西,想用C#。可是昨天日本人展示了一个在LINUX平台下使用C语言控制的单自由度机械臂,我问他们为什么不用WINDOWS,他们说用WINDOWS编程实时性很差,定时很不...

归纳总结C#中的各种定时器

一、单线程定时器 1.System.Windows.Forms.Timer WinForms定时器;单线程定时器,线程安全;运行在UI线程,可直接更新UI画面;执行效率不高,适用于小任务。2.Sy...
  • tiana0
  • tiana0
  • 2016年05月08日 18:34
  • 4171

c# 使用定时器Timer

定时器使用的程序。开始---》不断输入aaa  可以停止 继续。 引用:using System.Timers;  //、、、、、、、、、、、、、、   public part...

C#定时器的方式实时显示系统时间

1、为了在窗口上显示当前系统的时间,可以通过C#控件中的定时器功能。每隔一秒的时间来刷新一次显示时间。  private void timer1_Tick(object sender, Ev...

C#实现高精度定时器

转自:http://blog.csdn.net/chenyujing1234/article/details/7482464 这两天正在准备做一个实时控制的东西,想用C#。可是昨天日...

C# 3种定时器对比

功能描述

C#三种定时器的实现

C#三种定时器的实现 分类: 技术交流 2011-08-16 14:54 2002人阅读 评论(0) 收藏 举报 c#timerobjectwindowswinformapp...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#中三种定时器对象的比较
举报原因:
原因补充:

(最多只允许输入30个字)