Message58518
Guido van Rossum wrote:
> Why not simply reverse the wait() and read() calls?
I don't think it is sufficient if the user uses more than one pipe. The
subprocess.communicate() and _communicate() methods are using threads
(Windows) or select (Unix) when multiple pipes for stdin, stderr and
stderr are involved.
The only safe way with multiple pipes is communicate([input]) unless the
process returns *lots* of data. The subprocess module is buffering the
data in memory if the user uses PIPE or STDIN.
The subprocess module also contains a XXX comment in the unix version of
_communicate()
# XXX Rewrite these to use non-blocking I/O on the
# file objects; they are no longer using C stdio!
Should I create another bug entry for it?
Christian |
|
| Date |
User |
Action |
Args |
| 2007-12-13 02:25:03 | christian.heimes | set | spambayes_score: 0.00660622 -> 0.00660622 recipients:
+ christian.heimes, gvanrossum |
| 2007-12-13 02:25:02 | christian.heimes | link | issue1606 messages |
| 2007-12-13 02:25:02 | christian.heimes | create | |
|