【C#】C#中System.Timers.Timer定时触发事件的计时器类,运用

System.Timers.Timer 类用于创建定时器,它可以在指定的时间间隔内触发事件。

创建 Timer 实例: 使用 new System.Timers.Timer() 创建一个新的定时器实例。

设置定时器属性: 设置定时器的属性,主要包括 Interval(触发事件的时间间隔)和 AutoReset(指定是否重复触发事件)。

订阅 Elapsed 事件: 使用 Elapsed 事件来定义在时间间隔到达时执行的操作。

启动定时器: 调用 Start 方法启动定时器。

停止定时器(如果需要): 可以使用 Stop 方法停止定时器。

csharp 复制代码
using System;
using System.Timers;

class Program
{
    private static System.Timers.Timer myTimer;

    static void Main()
    {
        // 创建定时器实例
        myTimer = new System.Timers.Timer();

        // 设置触发事件的时间间隔为 1秒 
        myTimer.Interval = 1000;

        // 设置 AutoReset 为 true,使定时器在每个时间间隔到达时重置并触发 Elapsed 事件
        myTimer.AutoReset = true;//当 AutoReset 设置为 false 时,计时器只会在第一次触发 Elapsed 事件后停止,除非手动调用 Start 方法重新启动计时器。AutoReset 属性的默认值是 true

        // 指定 Elapsed 事件的处理方法
        myTimer.Elapsed += OnTimerElapsed;

        // 启动定时器
        myTimer.Start();

        Console.WriteLine("Press Enter to stop the timer.");
        Console.ReadLine();  // 阻塞主线程等待用户输入

        // 停止定时器
        myTimer.Stop();
        Console.WriteLine("Timer stopped. Press Enter to exit.");
        Console.ReadLine();
    }

    // Elapsed 事件的处理方法
    private static void OnTimerElapsed(object sender, ElapsedEventArgs e)
    {
        Console.WriteLine("Timer elapsed! Performing some task...");

        // 在这里可以添加定时器触发时要执行的操作

        Console.WriteLine("Task completed.");
    }
}
相关推荐
△曉風殘月〆4 小时前
WPF MVVM入门系列教程(二、依赖属性)
c#·wpf·mvvm
逐·風6 小时前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
m0_656974749 小时前
C#中的集合类及其使用
开发语言·c#
九鼎科技-Leo9 小时前
了解 .NET 运行时与 .NET 框架:基础概念与相互关系
windows·c#·.net
九鼎科技-Leo12 小时前
什么是 ASP.NET Core?与 ASP.NET MVC 有什么区别?
windows·后端·c#·asp.net·mvc·.net
.net开发12 小时前
WPF怎么通过RestSharp向后端发请求
前端·c#·.net·wpf
小乖兽技术12 小时前
C#与C++交互开发系列(二十):跨进程通信之共享内存(Shared Memory)
c++·c#·交互·ipc
幼儿园园霸柒柒12 小时前
第七章: 7.3求一个3*3的整型矩阵对角线元素之和
c语言·c++·算法·矩阵·c#·1024程序员节
平凡シンプル15 小时前
C# EF 使用
c#
丁德双15 小时前
winform 加载 office excel 插入QRCode图片如何设定位置
c#·excel