Terry J. Reedy added the comment:

The surprise to me, being on Windows, is that the pipe connection methods 
sometimes work with non-pipes.  The limitations of Windows event loops are 
given in https://docs.python.org/3/library/asyncio-eventloops.html#windows.  
The pipe connection functions are discussed in 
https://docs.python.org/3/library/asyncio-eventloop.html#connect-pipes.  Both 
say that the methods do not work with Windows' SelectorEventLoop.

My understanding is that this is because Windows' select() call does not work 
with pipes -- meaning honest-to-goodness OS pipes.  So I understood "*pipe* is 
file-like object." more as a un-surprising statement of fact than as a 
permissive "'pipe' can be any file-like object and not necessarily a pipe".

If 'pipe' were intended to mean 'file-like', then why use 'pipe'?  But I can 
see how a current unix user would understand that sentence the other way.  
Perhaps the sentence should read "For SelectorEventLoops (not on Windows), 
*pipe* can also be any file-like object with the appropriate methods." -- 
assuming that this is true on all non-Windows systems.

Isn't there some other way to asynchronously read/file files, as opposed to 
sockets and pipes, on Windows?

----------
nosy: +terry.reedy

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

Reply via email to