please see my code:<br>import os<br>import  threading<br>print  threading.currentThread()  <br>print "i am parent ",os.getpid()<br>ret  =  os.fork()<br>print  "i am here",os.getpid()<br>print  threading.currentThread()<br>if  ret  ==  0:<br>         print  threading.currentThread()<br>else:<br>        os.wait()<br>        print  threading.currentThread()<br>        <br>        <br>print "i am runing,who am i? ",os.getpid(),threading.currentThread()<br><br>the output is:<br><_MainThread(MainThread, started -1216477504)><br>i am parent  13495<br>i am here 13495<br><_MainThread(MainThread, started -1216477504)><br>i am here 13496<br><_MainThread(MainThread, started -1216477504)><br><_MainThread(MainThread, started -1216477504)><br>i am runing,who am i?  13496 <_MainThread(MainThread, started -1216477504)><br><_MainThread(MainThread, started -1216477504)><br>i am runing,who am i?  13495 <_MainThread(MainThread, started -1216477504)><br>it is so strange that  two  different  processes  use one  mainthread!!<br><br>