C# 计时器已用事件未命中目标方法
我正在开发Windows服务,在OnStart方法中,我使用Timer在某个时间间隔后点击timer1_滴答,但timer1_滴答甚至一次都没有调用 这是我的密码C# 计时器已用事件未命中目标方法,c#,.net,timer,windows-services,C#,.net,Timer,Windows Services,我正在开发Windows服务,在OnStart方法中,我使用Timer在某个时间间隔后点击timer1_滴答,但timer1_滴答甚至一次都没有调用 这是我的密码 protected override void OnStart(string[] args) { base.OnStart(args); var timer1 = new System.Timers.Timer(); timer1.Interval = 30000; //every 30 secs ti
protected override void OnStart(string[] args)
{
base.OnStart(args);
var timer1 = new System.Timers.Timer();
timer1.Interval = 30000; //every 30 secs
timer1.Elapsed += new System.Timers.ElapsedEventHandler(timer1_Tick);
timer1.Enabled = true;
WriteToFile("Service has started..");
}
private void timer1_Tick(object sender, ElapsedEventArgs e)
{
WriteToFile("Entered in GetFailedProductDetails...");
//code
}
widows服务程序.cs文件的启动代码
您的计时器可能由垃圾收集收集,因为您没有保留对它的引用 应将其存储在以下字段中:
private System.Timers.Timer timer1;
protected override void OnStart(string[] args)
{
base.OnStart(args);
timer1 = new System.Timers.Timer();
timer1.Interval = 30000; //every 30 secs
timer1.Elapsed += new System.Timers.ElapsedEventHandler(timer1_Tick);
timer1.Enabled = true;
WriteToFile("Service has started..");
}
private System.Timers.Timer timer1;
protected override void OnStart(string[] args)
{
base.OnStart(args);
timer1 = new System.Timers.Timer();
timer1.Interval = 30000; //every 30 secs
timer1.Elapsed += new System.Timers.ElapsedEventHandler(timer1_Tick);
timer1.Enabled = true;
WriteToFile("Service has started..");
}