[Python-Dev] PEP 3145 (With Contents) (original) (raw)

Antoine Pitrou solipsis at pitrou.net
Tue Sep 15 20:23:20 CEST 2009


Hello,

I would like to know if your approach is based on Python 2.x or 3.x. Python 3.x has new API provisions, in the I/O layer, for non-blocking I/O and it would be nice if your work could fit in that framework.

> Popen can be made to act like a file by simply > using the methods attached the the subprocess.Popen.stderr, stdout and > stdin file-like objects. But when using the read and write methods of > those options, you do not have the benefit of asynchronous I/O.

I'm not sure I understand the latter sentence. Do you imply that, with your work, read() and write() do allow you to benefit from async I/O? If so, how?

Another question: what mechanism does it use internally? Is this mechanism accessible from the outside, so that people can e.g. integrate this inside a third-party event loop (Twisted, asyncore or whatever else)?

The PEP should probably outline the additional APIs a bit more precisely and formally than it currently does.

> The Windows > implementation uses ctypes to access the functions needed to control pipes > in the kernel 32 DLL in an asynchronous manner.

Sorry for the naive question (I'm not a Windows specialist), but does the allusion to "kernel32.dll" mean that it doesn't function on 64-bit variants?

Thanks for your work,

Regards

Antoine.



More information about the Python-Dev mailing list