有没有办法在定时器启动时第一次执行定时器回调(使用 start() 方法),而不是等待间隔通过第一次执行?
更新:我正在使用 System.Timers.Timer。
相信您正在寻找的东西在这里被描述为dueTime:http: //msdn.microsoft.com/en-us/library/2x96zfy7.aspx
不,因为它被设计为在它开始的某个时间间隔后Timer
调用事件。Tick
相反,在您的代码中,您可以Tick
在首次启动Timer
.
PS 我说的是 WinForms 计时器。
第三个参数(1000)是您希望的到期时间:
_timer = new System.Threading.Timer(new TimerCallback(InvokeTimerCallback), null, 1000, 3600000);
尝试不同的计时器,例如System.Threading.Timer。这支持初始延迟(您想要一个 0)加上一个句点。