.NET中Timer的最大精度是多少?

RCI*_*CIX 10 .net c# precision timer

我想知道Timer类的精度在System.Timers中是什么,因为它是一个double(这似乎表明你可以有几分之一毫秒).它是什么?

cta*_*cke 9

Windows桌面操作系统在大约40ms以下确实不准确.操作系统根本不是实时的,因此存在显着的非确定性抖动.这意味着虽然它可能会将值报告为毫秒甚至更小,但您无法真正指望这些值真正有意义.因此,即使 Timer间隔设置为某个亚毫秒值,您也不能依赖设置和触发之间的时间实际上是您所说的.

再加上这个事实,你运行的整个框架是非确定性的(GC可以暂停你并在Timer应该触发的时候进行收集)并且你最终会遇到负载和风险,试图做任何事情时间关键.