如果我将System.Timers.Timer的间隔设置为.5?
会发生什么这是我正在添加的更多文字,所以愚蠢的过滤器会让我发布这个问题。
答案 0 :(得分:3)
通常,没有。通常,Windows中的计时器仅精确到特定的时间间隔,大约15ms。任何小于此的东西通常只会导致定时器每14-15ms左右发射一次。
话虽如此,该框架不仅仅是Windows。在不同的实时操作系统上,您可能会使计时器更频繁地引发事件,而不是每毫秒一次。框架API并不假设您将处理非实时操作系统的限制,即使实际情况是这样(大多数情况下)。
请注意,在内部,System.Timers.Timer
实际上使用System.Threading.Timer
来实现,Math.Ceiling
使用Int32 for period and dueTime。因此,Windows版本不可能具有非整数时序。框架在传递的Interval上使用{{1}},因此您将获得1ms的间隔。话虽这么说,这是一个实现细节,所以不是一般会或者应该依赖的东西。