C# System.Timers.Timer的一些小问题?

比如设置间隔时间是 1000ms
System.Timers.Timer mytimer = new System.Timers.Timer(1000);
问题
若响应函数执行的时间超过了 1000 ms,那这时
第二次响应函数会立即执行,
还是等待当前的响应函数执行完成,然后立即执行,
还是其它的什么处理方式?


2014-08-25 14:51
提问者采纳
System.Timers.Timer的每一次Elapsed触发,都会在一个新的线程中执行。
所以你的第一次响应如果没执行完,那第二次就会在一个新的线程里制定。
不会等第一次响应完成,会立即执行。

如果你希望达到你说描述的效果,那可以用System.Windows.Forms.Timer
这个Timer的响应都会在主线程中执行,所以第二个会等第一个的响应。

原文地址:https://www.cnblogs.com/123e/p/4985193.html