我在myTimer.Stop();
方法的中间调用myTimer_Tick
。在提出这个问题之前,我读到了这个问题:Stop timer in the middle of the tick;但我的问题是不同的东西:
我认为如果调用myTimer.Stop()
或myTimer.Enable = false
,Tick方法将运行到最后,但不会成为下一个Tick。事实上,我不想立即停止Tick方法并返回。
我说错了吗?
编辑: 我试着在一个例子中展示我想要的东西:
void mytimer_Tick(object sender, EventArgs e)
{
someWorks1;
myTimer.Stop();
someWorks2;
}
我也希望最后一次运行someWorks2
。
答案 0 :(得分:2)
我认为如果致电
myTimer.Stop()
或myTimer.Enable = false
,Tick
方法将会运行到最后,但不会成为下一个Tick。
正确。停止计时器将不终止执行回调函数的线程。您的Tick方法将继续运行,直到它返回。
您可以轻松编写示例来证明这一点。