千家信息网

C#中的Timer定时器类如何使用

发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,本文小编为大家详细介绍"C#中的Timer定时器类如何使用",内容详细,步骤清晰,细节处理妥当,希望这篇"C#中的Timer定时器类如何使用"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来
千家信息网最后更新 2025年11月06日C#中的Timer定时器类如何使用

本文小编为大家详细介绍"C#中的Timer定时器类如何使用",内容详细,步骤清晰,细节处理妥当,希望这篇"C#中的Timer定时器类如何使用"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

System.Timers.Timer

定时器就是经过固定时间,执行固定任务。

定时器简单使用

设置初始属性

初始化定时器间隔多少时间执行

System.Timers.Timer timer = new System.Timers.Timer(double interval);

interval是毫秒数。比如最后的毫秒数设为1000就是一秒。

也可以用无参构造函数创建后,用对象.interval设置。

设置执行的事件–Elapsed

timer.Elapsed += 需要方法名称。

经过上面设置好的毫秒后,执行事件。比如我要在指定时间内执行方法MyMethod,使用该参数Elapsed进行指定。timer.Elapsed += MyMethod。

该方法有且仅有两个参数MyMethod(Object source, ElapsedEventArgs e) ,且返回值为void。 其中的ElapsedEventArgs 是给Elapsed事件提供数据的对象。
当然了,你还可以再MyMethod中调用其他的方法。

设置是否重复执行–AutoReset

该参数的值类型为bool,默认为false。
如果为false,该定时器只会在第一次经过指定时间执行一次Elapsed方法,后续再经过指定时间间隔就不再执行。

如果为true则每经过时间间隔就执行一次该方法。

设置是否触发Elapsed事件–Enabled

该参数的值类型为bool,默认为false。
如果为false,就算经过指定事件也不触发Elapsed事件。
若为true,经过指定时间,执行Elapsed事件。

简单示例–借用官方示例

using System;using System.Timers;public class TimerTest{    //定义定时器    private static System.Timers.Timer aTimer;    public static void Main()    {        //初始化定时器属性        SetTimer();        Console.WriteLine("\n键盘输入即可退出...\n");        Console.WriteLine("定时器开始于 {0:HH:mm:ss.fff}", DateTime.Now);        Console.ReadLine();//保持程序持续运行        aTimer.Stop();//停止定时器        Console.WriteLine("\n停止定时器...\n");        aTimer.Dispose();//释放资源        Console.WriteLine("退出...");        Console.ReadLine();    }    private static void SetTimer()    {        Console.WriteLine("初始化当前的定时器");        // 创建一个两秒一次的定时器        aTimer = new System.Timers.Timer(2000);        // 设置事件        aTimer.Elapsed += MyMethod;        aTimer.AutoReset = true;        aTimer.Enabled = true;        Console.WriteLine("设置完毕");    }    public static void A()    {        //在这里写真正的操作        Console.WriteLine("我定时执行的操作A");    }    private static void MyMethod(Object source , ElapsedEventArgs e)    {        //我真正需要执行的操作        Console.WriteLine("当前时间 {0:HH:mm:ss.fff}", DateTime.Now);        Console.WriteLine("ElapsedEventArgs携带的数据 {0:HH:mm:ss.fff}", e.SignalTime);        A();    }}

结果

读到这里,这篇"C#中的Timer定时器类如何使用"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。

定时器 事件 时间 方法 参数 C# 文章 内容 对象 就是 属性 数据 示例 类型 妥当 两个 任务 函数 名称 官方 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 国家电网网络安全监测装置入围 电信运营商网络安全宣传 工控网络安全知识技术问答 工行软件开发中心上海 三级数据库中封锁是什么 收看网络安全大讲堂心得体会 初级软件开发工程师资格证 安徽联想服务器维修系统云主机 网络安全状况分析报告 服务器配置作用 数据库的安全等级 海康服务器安装centos7 六安通信软件开发需要多少钱 用户量增长怎么进行云服务器扩容 加固服务器哪家不错 银川办公软件开发报价多少 软件测试占软件开发的多少 原神小米手机登录的是什么服务器 个人学习计算机网络技术发展规划 网络安全许可证一年有效期 湖南app软件开发的企业 如何在桌面添加服务器客户端 鬼泣巅峰之战服务器进不去 教资中职专业课计算机网络技术 注册服务器占用cpu 读写数据库有没有阻塞的方式 华为软件开发工程师职业要求 安全测评服务器 网络技术检测方法 网络安全春考
0