Python Checking If A Fork() Process Is Finished
Just wondering if some one could help me out. The problem I'm having is that I os.fork() to get several bits of information and send them to a file, but checking to see if the fork
Solution 1:
To wait for the child process to terminate, use one of the os.waitXXX() functions, such as os.waitpid(). This method is reliable; as a bonus, it will give you the status information.
Solution 2:
While you can use os.fork() and os.wait() (see below for an example), you are probably better off using methods from the subprocess module.
import os, sys
child_pid = os.fork()
if child_pid == 0:
# child process
os.system('ping -c 20 www.google.com >/tmp/ping.out')
sys.exit(0)
print"In the parent, child pid is %d" % child_pid
#pid, status = os.wait()
pid, status = os.waitpid(child_pid, 0)
print"wait returned, pid = %d, status = %d" % (pid, status)
Post a Comment for "Python Checking If A Fork() Process Is Finished"