STINNER Victor added the comment:

> Just round the timeout away from 0 and be happy: this will fix the busy-wait 
> problem, and that's all we want.

I didn't work, see:
http://bugs.python.org/issue20311#msg208601

> Once again, I know I keep repeating myself, but having select/epoll/whatever 
> wake up 10usec before the timeout isn't an issue: *all* async-IO frameworks 
> out there work just fine with this.

The previous issue #20311 and this one are not critical bug, just performance 
issues. I would prefer to not call _run_once() and epoll_wait() too many times 
if it's useless (if it can be avoided).

> So please, revert all this granuarity complexity, and re-apply the timeout 
> rounding.

*If* we come back to the rounding aways zero option and granularity is removed 
from asyncio.BaseEventLoop, the issue should also be fixed in the IOCP selector 
used by the proactor event loop in Python.

--

If we decide that it's not an issue that _run_once() is called too many times, 
the unit test can be changed to ensure that _run_once() is called less than 10 
times, instead of expecting an exact number of calls (7 at the end): so 
tolerate 3 useless calls.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue20452>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to