Hi, I've used subprocess with 2.4 several times to execute a process, wait for it to finish, and then look at its output. Now I want to spawn the process separately, later check to see if it's finished, and if it is look at its output. I may want to send a signal at some point to kill the process. This seems straightforward, but it doesn't seem to be working.
Here's my test case: import subprocess, time cmd = "cat somefile" thread = subprocess.Popen(args=cmd.split(), shell=True, stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.STDOUT, close_fds=True) while(1): time.sleep(1) if(thread.returncode): break else: print thread.returncode print "returncode = ", thread.returncode for line in thread.stdout: print "stdout:\t",line This will just print the returncode of None forever until I Ctrl-C it. Of course, the program works fine if I call thread.communicate(), but since this waits for the process to finish, that's not what I want. Any help would be appreciated. -- http://mail.python.org/mailman/listinfo/python-list