diff options
author | Zac Medico <zmedico@gentoo.org> | 2012-02-11 11:34:36 -0800 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2012-02-11 11:34:36 -0800 |
commit | dcb9fab8463996542d06d29bc383f5933bf0d677 (patch) | |
tree | 73521abda66d8491208290fe90bc5a1c602bda96 | |
parent | a7071bd82676ffdf3020b2f71effa2512ed803d4 (diff) | |
download | portage-dcb9fab8463996542d06d29bc383f5933bf0d677.tar.gz portage-dcb9fab8463996542d06d29bc383f5933bf0d677.tar.bz2 portage-dcb9fab8463996542d06d29bc383f5933bf0d677.zip |
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().
-rw-r--r-- | pym/portage/util/_eventloop/EventLoop.py | 2 |
1 files changed, 1 insertions, 1 deletions
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) |