From: Zac Medico Date: Sat, 11 Feb 2012 19:34:36 +0000 (-0800) Subject: EventLoop: shorten iteration poll if timeouts X-Git-Tag: v2.2.0_alpha86~12 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=dcb9fab8463996542d06d29bc383f5933bf0d677;p=portage.git EventLoop: shorten iteration poll if timeouts This fixes EventLoop.iteration() so that it doesn't poll too long when there are timeouts registered, since it's not nice to spend a long time polling for an IO event that might never arrive even though a timeout may have changed some state that would terminate a timeout loop like in QueueScheduler.run() or AbstractPollTask._wait_loop(). This makes EventLoop.iteration() behave more like GlibEventLoop.iteration(). --- diff --git a/pym/portage/util/_eventloop/EventLoop.py b/pym/portage/util/_eventloop/EventLoop.py index 02c3cec01..a7161dbd5 100644 --- a/pym/portage/util/_eventloop/EventLoop.py +++ b/pym/portage/util/_eventloop/EventLoop.py @@ -166,7 +166,7 @@ class EventLoop(object): if not self._poll_event_queue: if may_block: - timeout = None + timeout = self._timeout_interval else: timeout = 0 self._poll(timeout=timeout)