M Z*_*tra 3 c# windows-services timer timelapse
我目前正在创建一个使用计时器间隔的 Windows 服务。Elapsed该计时器每秒重复一次,但完成计时器事件可能需要超过一秒的时间,其创建如下:
Timer timer = new Timer();
timer.Enabled = true;
timer.Interval = 1000; // 1 second
timer.Elapsed += myFunction;
Run Code Online (Sandbox Code Playgroud)
现在是一个简单的问题:即使Elapsed事件尚未完成,计时器是否仍继续,或者事件完成后计时器是否等待并继续Elapsed?
该类System.Timers.Timer有一个AutoReset属性。
如果设置为false,计时器将仅运行一次,以便您在函数完成时再次启动它。
如果将其设置为true,计时器将不会停止并每秒运行您的函数,除非弹出异常。
默认情况下,该属性设置为true