我可以使用没有定时器组件的定时器吗?

Pom*_*ter 1 .net c# windows-services timer

我正在使用Windows服务而且它们很难测试,所以我希望尽可能将它留空,只能导入类.

我需要每5分钟使用一个Timer来触发和事件,但如果我使用计时器组件,我必须将它放在我的Windows服务上.

那么有可能建立我自己的基本计时器类??

我怎么会这样呢?我想要非常小而轻,如果可能的话几行代码.

ABH*_*ABH 5

您可以使用System.Timers.TimerSystem.Threading.Timer

来自MSDN

// Create a timer with a ten second interval.
System.Timers.Timer aTimer = new System.Timers.Timer(10000);

// Hook up the Elapsed event for the timer.
aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);

// Set the Interval to 2 seconds (2000 milliseconds).
aTimer.Interval = 2000;
aTimer.Enabled = true;
Run Code Online (Sandbox Code Playgroud)

计时器已用事件处理程序

// Specify what you want to happen when the Elapsed event is 
// raised.
private static void OnTimedEvent(object source, ElapsedEventArgs e)
{
    Console.WriteLine("The Elapsed event was raised at {0}", e.SignalTime);
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,您不需要定时器组件

这是关于.Net中计时器的完整文章.这里讨论不同类型的定时器之间的完全比较.