在我的应用程序上,我有一个计时器,可以在几分钟的时间间隔内检查服务器的配置更新。
配置检索是一个非常耗时的过程,所以我想强制定时器的“Tick”事件,但我不能只调用timer_tick(bla,bla,bla),因为它会同步执行。
是否有一种简单的方法可以强制计时器“勾选”(不创建新线程)? 该行为应该“重置”计时器的剩余时间(因此,如果最初计时器设置为2分钟间隔和1分钟已经过去 - 强制“勾号”后 - 计时器将再次开始计数2分钟)
答案 0 :(得分:2)
更改它的超时值。
答案 1 :(得分:0)
在您的消费过程中,您的第一步是禁用计时器,最后一步是再次启用它。
也许你只是在调用长期运行的流程之前和之后启用此功能并启用:
timer.Enabled = false;
LongRunningSyncProcess();
timer.Enabled = true;