我的代码如下:
protected override void OnStart(string[] args)
{
//Set the interval of timer to 5 minutes.
timer1.Interval = 300000;
//Enable the timer.
timer1.Enabled = true;
repeatFunction();
}
我在timer_tick事件中调用了repeat函数,如下所示:
private void timer1_Tick(object sender, EventArgs e)
{
eventLog1.WriteEntry("Timer ticked");
repeatFunction();
}
但计时器没有滴答作响。请告诉我哪里出错了。
答案 0 :(得分:2)
您的代码是这样的:检查
如何使用Timer类在一定间隔后引发事件?
timer1.Interval = 5000;
timer1.Enabled = true;
timer1.Tick += new System.EventHandler (OnTimerEvent);
编写事件处理程序
此事件将在每5秒后执行一次。
public static void OnTimerEvent(object source, EventArgs e)
{
m_streamWriter.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(),DateTime.Now.ToLongDateString());
m_streamWriter.Flush();
}
还要检查此属性]
<强>自动复位强>
指示每次指定的Interval过去时Timer是否引发Tick事件,或者在第一个间隔过去之后是否仅引发一次Tick事件。
答案 1 :(得分:1)
您需要将timer1_Tick方法绑定到计时器Elapsed事件。
timer.Interval = 300000;
timer.Elapsed += new ElapsedEventHandler(timer1_Tick);
timer.Start();