0
我有定时器回调线程每1秒执行一个特定的功能。在某些事件发生后,我通过处理旧值并将其设置为新值(60秒)将计时器更改为60秒。即使我处置后,我看到该功能正在执行每秒。我相信一些线程请求已经从先前的定时器值排队,因为执行该函数所需的时间大约需要3秒左右。 这是我的线程函数如何解除排队的线程:C#
private void ThreadFunction(object sender)
{
getEvent();
return;
}
这是getEvent功能:
private void getEvent() {
mutex.WaitOne()
//do the task
.
.
mutex.ReleaseMutex()
}
然而计时器即使我改变为60秒我仍然看到正在执行上述功能的每一秒
这样的事情设置为新的计时器值
eventThreadTimer.Dispose();
eventThreadTimer= new System.Threading.Timer(CallBack, null, dueTimeInterval, dueTimeInterval);
有人能帮我解决这个问题吗?