Hello, I've seen many messages and bug reports on popen2 about pipes, buffer size problems, sub-processes not properly closed, race conditions, popen2 not being thread safe... But I still can't figure what applies to my case.
This piece of code: #!/usr/bin/python import threading import popen2 class MyThread ( threading.Thread ): def run ( self ): #popenChild = popen2.Popen3("cat /etc/passwd") #popenChild = popen2.Popen3("/usr/bin/iostat -V") popenChild = popen2.Popen3("/usr/bin/iostat -k -x 1 2") popenChild.wait() print 'Bye' MyThread().start() Works fine on RHEL5/python 2.4.3 Hangs on RHEL4/python 2.3.4 I presume it hangs on wait(). It does not hang with: popenChild = popen2.Popen3("/usr/bin/iostat -V") # short output popenChild = popen2.Popen3("cat /etc/passwd") # long output It does not hang outside of a thread: #!/usr/bin/python import popen2 popenChild = popen2.Popen3("/usr/bin/iostat -k -x 1 2") #print popenChild.fromchild.readlines() popenChild.wait() print 'Bye' Could someone explain this to me ? Thanks in advance. Louis Coilliot -- http://mail.python.org/mailman/listinfo/python-list