Hi all,

I found an odd behavior using a LoopingCall.withCount with a very small interval (0.02 sec): sometimes the countCallable is called with 0 as argument and it looks like the now - _realLastTime is smaller than the looping interval.

Here you can find the very simple code I use to reproduce the "anomaly", with a main loopingCall and another one that prints its internals

https://gist.github.com/dvinella/31d94f9dd0e47586658d

and here an extract of the logs it produces

https://gist.github.com/dvinella/8cfdce0b9f5fdda7b375

The doc for the withCount states that the argument should be normally 1, higher if the reactor blocks for some reason, but it doesn't say anything about 0.
The beahavior is quite misleading since the loop seems to anticipate the interval timeout, saying "I've been called, but I should have not been called"

I must add that the anomaly doesn't appear right at the start, but after tens of seconds, mostly when the system is under medium/heavy load.

So is it only a documentation issue for an exceptional case, due to timers imprecision, that should be handled at higher levels, or is it a real issue?

dario