Windows服务器中的System.Windows.Forms.Timer

时间:2012-08-24 15:00:36

标签: c# windows-services

有人可以向我提供一个如何在Windows服务中使用System.Windows.Forms.Timer的示例。计时器应该每10秒“调用”一次非静态Windows服务方法。我(在OnStart方法中尝试过这种方法失败了):

_timer.Tick += new EventHandler(StartProcessingItems);
_timer.Interval = 10000;
_timer.Enabled = true;
_timer.Start();    

这里的StartProcessingItems是我的静态Windows服务方法。

1 个答案:

答案 0 :(得分:2)

使用System.Threading.Timer:

var t = new Timer(o => 
{
   Console.WriteLine("Hello from the past! " + (DateTime)o);
}, DateTime.Now, TimeSpan.FromSeconds(10), TimeSpan.FromMinutes(1));

它将在10s之后执行委托,然后以1min的频率执行

http://msdn.microsoft.com/fr-fr/library/system.threading.timer%28v=vs.80%29.aspx