c#计时器

在C#中,可以使用 System.Timers.Timer 或 System.Threading.Timer 类来实现计时器功能,用于在指定的时间间隔内执行代码。以下是这两种计时器的用法示例:

使用 System.Timers.Timer:

using System;
using System.Timers;

class Program
{
    static void Main()
    {
        Timer timer = new Timer();
        timer.Interval = 1000; // 设置计时器的间隔,单位为毫秒
        timer.Elapsed += TimerElapsed; // 添加事件处理程序
        timer.AutoReset = true; // 设置是否自动重置计时器
        timer.Start(); // 启动计时器

        Console.WriteLine("Press Enter to stop the timer.");
        Console.ReadLine();

        timer.Stop(); // 停止计时器
        timer.Dispose(); // 释放计时器资源
    }

    static void TimerElapsed(object sender, ElapsedEventArgs e)
    {
        Console.WriteLine("Timer elapsed at: " + DateTime.Now);
   }  
}

在上面的示例中,使用 System.Timers.Timer 类创建了一个计时器,每隔一秒钟触发一次 TimerElapsed 事件处理程序。可以使用 Start() 启动计时器,使用 Stop() 停止计时器,最后使用 Dispose() 释放计时器资源。

使用 System.Threading.Timer:

using System;
using System.Threading;

class Program
{
    static void Main()
    {
        Timer timer = new Timer(TimerCallback, null, 0, 1000); // 创建计时器

        Console.WriteLine("Press Enter to stop the timer.");
        Console.ReadLine();

        timer.Dispose(); // 释放计时器资源
    }

    static void TimerCallback(object state)
    {
        Console.WriteLine("Timer elapsed at: " + DateTime.Now);
    }
}

在这个示例中,使用 System.Threading.Timer 类创建了一个计时器,通过 TimerCallback 方法指定定时触发的操作。第三个参数 0 表示计时器首次触发的延迟时间,最后一个参数 1000 表示计时器的间隔时间(以毫秒为单位)。

这两个示例展示了使用 System.Timers.Timer 和 System.Threading.Timer 类创建计时器的基本用法。您可以根据需要选择适合您需求的计时器类型,并根据事件处理程序执行您希望的操作。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容