如果我有大量的计时器(10到几百个),所有的时间间隔都小于100ms,这会影响其中任何一个的触发吗?
发布于 2009-10-07 08:02:03
从逻辑上讲,没有,但在实践中,我想您可能会发现它们的性能受到物理CPU约束的限制。
我怀疑你可能想要重新审视你的设计。
发布于 2009-10-07 08:09:27
会的,但我不知道你会不会看到。
如果你有一台1 1GHz的机器。那么一个时钟周期就是1纳秒(1/1.000.000.000)。假设一个定时器设置需要10个时钟节拍(可能需要更多时间,但这只是一个思维实验)。那么100个定时器设置将花费1微秒。
但是,您还需要考虑到实际生活中的许多其他变量,但这应该有助于您了解发生了什么。
发布于 2009-10-07 08:21:13
您使用的是什么Timer类?许多标准计时器的分辨率不是很高,它们可能不应该用于小于100毫秒的间隔。有关更高分辨率计时器的示例,请参见here。
如前所述,您应该重新考虑您的设计,因为拥有10秒或100秒的计时器是不必要的复杂和浪费资源。一个高分辨率的1ms计时器可以用来计时超过1ms的任何时间间隔--只需计算计时器已经触发了多少次。如果要跟踪多个时间间隔,请使用具有多个计数的1 ms计时器,每个时间间隔一个。因此,对于100毫秒的间隔,当计时器计数达到100时,该间隔已过(然后需要将此计数重置为0)。
https://stackoverflow.com/questions/1530174
复制相似问题