用c#写一个函数的定时器
时间: 2024-02-11 10:04:38 浏览: 127
在 C# 中,可以使用 `System.Timers.Timer` 类来创建一个函数的定时器。下面是一个简单的例子:
```csharp
using System;
using System.Timers;
class Program
{
static void Main(string[] args)
{
// 创建一个 Timer 对象,每隔 1 秒回调一次 TimerElapsed 方法
Timer timer = new Timer(1000);
timer.Elapsed += TimerElapsed;
timer.AutoReset = true;
timer.Enabled = true;
// 等待用户按下 Enter 键退出程序
Console.ReadLine();
}
static void TimerElapsed(object sender, ElapsedEventArgs e)
{
// 在控制台输出当前时间
Console.WriteLine("Current time: {0}", DateTime.Now);
}
}
```
在上面的例子中,`Timer` 的构造函数的参数是定时器的间隔时间,这里我们设置为 1000ms,表示每隔 1 秒回调一次回调方法。在 `Main` 方法中,我们创建了一个 `Timer` 对象,并且为 `Elapsed` 事件添加了一个回调方法 `TimerElapsed`。`AutoReset` 属性被设置为 `true`,表示定时器将在每次到期后自动重置,所以回调方法将会一直被调用。最后,我们启动了定时器。
在 `TimerElapsed` 方法中,我们输出当前时间,以便确认定时器是否正常工作。该方法的第一个参数是事件的发送者,这里是 `Timer` 对象本身;第二个参数是 `ElapsedEventArgs` 对象,包含了关于事件的信息,例如事件发生的时间。