(original) (raw)

import os, sys from threading import * def log( message ): print ( "%d %s" % (os.getpid(), message) ) if __name__ == "__main__": log( "is parent" ) t = Thread() t.start() # t.join() # OPTION 1 childPID = os.fork() if childPID == 0: log( "is child" ) log( "sees threads: %s" % str(enumerate()) ) if childPID == 0: #os._exit(0) # OPTION 2 pass else: t.join() #os.kill( childPID, 15 ) # OPTION 3 log( "parent done waiting for %s, now waiting for child pid %d" % (t.getName(), childPID) ) os.waitpid(childPID, 0) log( "exiting" )