[issue20130] asyncio: implement a synchronous executor if concurrent.futures is missing

STINNER Victor report at bugs.python.org
Sun Jan 5 19:11:52 CET 2014


STINNER Victor added the comment:

2014/1/5 Antoine Pitrou <report at bugs.python.org>:
> That doesn't sound like a very good idea, only to support FreeBSD 6.

Well, if the patch is rejected here, I will propose it in Tulip, or I
will keep it only in Trollius (the port on Python 2.7).

The idea of this issue was discussed on the python-tulip group and
approved by Guido van Rossum:
https://groups.google.com/forum/#!msg/python-tulip/1CbjmZTXINM/pR-_CVga7bUJ

> Synchronous execution blocks the event loop waiting for I/O, which basically destroys the point of having an event loop.

asyncio only uses the executor to resolve host names. Resolution is
usually fast, and you may only resolve a name once at startup. But I
agree that it's slower than supporting asynchronous resolution.

I hope that asyncio will get its down asynchronous DNS resolver! There
are existing projects:
https://pyuv.readthedocs.org/en/release-0.6.1/dns.html (Asynchronous
DNS resolver using c-ares for pyuv)
http://code.google.com/p/asyncdns/
https://code.google.com/p/adns-python/ (Python interface to GNU adns
asynchronous resolver library)
etc.

> Let users of FreeBSD 6 upgrade their systems instead, IMHO.

Well, sometimes you don't have the choice of your OS :-)

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue20130>
_______________________________________


More information about the Python-bugs-list mailing list