STINNER Victor added the comment: > Do Popen.write_nonblocking() and Popen.read_nonblocking() methods > belong to the second category? Should they raise BrokenPipeError?
IMO when you write directly to stdin and read from stdout/stderr of a child process, your code should be written to handle BrokenPipeError. You must decide how to handle them. Otherwise, you have to poll manually the child process using proc.poll() which is less efficient. If you forget to poll the process, your program may enter an unlimited loop which only occur in some cases (bug in the child process which exits before reading the whole stdin input). ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue1191964> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com