If a PeriodicCallback runs longer than its period, skip the missed callbacks

instead of trying to run all the missed callbacks to catch up.
This commit is contained in:
Ben Darnell 2011-08-02 23:47:55 -07:00
parent 01be222ec8
commit 7aec8fc9b3
1 changed files with 3 additions and 1 deletions

View File

@ -461,7 +461,9 @@ class PeriodicCallback(object):
def _schedule_next(self):
if self._running:
self._next_timeout += self.callback_time / 1000.0
current_time = time.time()
while self._next_timeout < current_time:
self._next_timeout += self.callback_time / 1000.0
self.io_loop.add_timeout(self._next_timeout, self._run)