我正在使用带有计时器的 Windows 服务来安排每个时间间隔的作业。似乎 timer elapsed 事件被触发了不止一次。
这是一个代码示例:
private static System.Timers.Timer _timer = new System.Timers.Timer();
protected override void OnStart(string[] args)
{
_timer.Elapsed += new System.Timers.ElapsedEventHandler(OnTimedEvent);
_timer.Interval = 1000;
_timer.Enabled = true;
_timer.Start();
}
private void OnTimedEvent(object source, System.Timers.ElapsedEventArgs e)
{
_timer.Enabled = false;
_timer.Stop();
//Do the job
_timer.Enabled = true;
_timer.Start();
}
你能帮助我吗?谢谢