关于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控件。它们的缺点是不支持直接的拖放,需要手工编码。

本文URL:http://www.bianceng.cn/Programming/csharp/201410/45596.htm

下面举例说明,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; 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 = ;
aTimer.AutoReset = true;//执行一次 false,一直执行true
//是否执行System.Timers.Timer.Elapsed事件
aTimer.Enabled = true;
}
}
}

C#中Timer定时器的使用示例的更多相关文章

  1. 浅析linux内核中timer定时器的生成和sofirq软中断调用流程(转自http://blog.chinaunix.net/uid-20564848-id-73480.html)

    浅析linux内核中timer定时器的生成和sofirq软中断调用流程 mod_timer添加的定时器timer在内核的软中断中发生调用,__run_timers会spin_lock_irq(& ...

  2. 浅析linux内核中timer定时器的生成和sofirq软中断调用流程【转】

    转自:http://blog.chinaunix.net/uid-20564848-id-73480.html 浅析linux内核中timer定时器的生成和sofirq软中断调用流程 mod_time ...

  3. 【Boost】boost库中timer定时器 1

    博客转载自:http://blog.csdn.net/liujiayu2/article/details/50384537 同步Timer asio中提供的timer名为deadline_timer, ...

  4. asp.net中Timer定时器在web中无刷新的使用

    最近在做一个项目的时候,web端的数据需要与数据源进行实时同步,并保证数据的准确性,当时,考虑到使用ajax异步刷新技术.但后来在网上查找相关资料时,发现这样做,太浪费资源了,因为ajax的提交请求不 ...

  5. .net中 Timer定时器

    作者:feiying008 在开发一套视觉系统时,发现系统内存一直不断增加,直至系统内存爆满.一开始还以为是程序内存泄露,是图像操作算法写的有问题,但是,发现如果电机轴如果 不运行的状态下,每隔一秒进 ...

  6. 关于C#中Timer定时器的重入问题解决方法(也适用于多线程)

    项目中用到了定时器随着服务启动作定时任务,按指定的准点时间定时执行相关操作,但是在指定准点时间内我只想让它执行一次,要避免重入问题的发生. 首先简单介绍一下timer,这里所说的timer是指的Sys ...

  7. 【Boost】boost库中timer定时器 2

    博客转载自:http://blog.csdn.net/yockie/article/details/40386145 先跟着boost文档中asio章节的指南中的几个例子学习一下使用: 所有的Asio ...

  8. C#中WebService 的 Timer定时器过段时间后自动停止运行

    我用.net做的一个Timer定时器,定时获取短信并给予回复,但大概过了十几个小时以后,Timer定时器会自动停止,再发送短信就不能收到回复,需要在服务器中重新运行定时器才可以,请教各位! 我是在.n ...

  9. Java 中Timer和TimerTask 定时器和定时任务使用的例子

    转自:http://blog.csdn.net/kalision/article/details/7692796 这两个类使用起来非常方便,可以完成我们对定时器的绝大多数需求 Timer类是用来执行任 ...

随机推荐

  1. linux修改文件为可执行文件

    修改shell为可执行文件 chmod +x test2.sh chmod 751 file   给file的属主分配读.写.执行(7)的权限,给file的所在组分配读.执行(5)的权限,给其他用户分 ...

  2. Vue发送请求

    可以试试玩ajax请求,个人觉得axios用Promise包装了下,代码美观 axios请求使用方法      https://github.com/axios/axios#using-applica ...

  3. 2018 完美搭建VS Code 的JAVA开发环境并解决print乱码问题

    出自微软的Visual Studio Code 并不是一个 IDE,它是个有理想,有前途的编辑器,通过相应语言的插件,可以将其包装成一个 轻量级的功能完善的IDE. 自从遇见了她,真的是对她一见钟情不 ...

  4. sqlserver 为表添加一个自增主键

    alter table person add id int primary key identity(1,1) not null

  5. JS 正则表达式基础

    1.元字符: 2.重复限定符 一些简单的正则表达式 (1)匹配8位数的QQ号码 ^\d{8}$ (2)匹配1开头的11位数手机号码 ^1\d{10}$ (3)匹配14-18位数的银行卡号 ^\d{14 ...

  6. Java 消除过期的对象引用

    内存泄漏的第一个常见来源是存在过期引用. import java.util.Arrays; import java.util.EmptyStackException; public class Sta ...

  7. aix 查看内存,CPU 配置信息

    内存lsattr -El mem0cpu lsdev -C |grep procCPU的信息lsattr -El proc0   #bootinfo -r查看物理内存     使用命令#  lsdev ...

  8. springboot上传文件并检查图片大小与格式

    @PostMapping(value = "/uploadDriverImage") public JsonResVo uploadDriverImage(@RequestPara ...

  9. .Net转Java.06.字符串的split的区别

    在Java遇到了将类似“1|2|3|4”的字符串分隔为数组的功能 这种问题能难倒有着十多年开发经验的的.NET码农? // Java代码 String s="1|2|3"; Str ...

  10. Redis简单示例

    1.Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. 从2010年3月15日起,Redis的开发工作由VMwa ...