在Python中os.fork()产生子进程的例子
作者:CrazyVertigo
今天小编就为大家分享一篇在Python中os.fork()产生子进程的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
例1
import os print 'Process (%s) start...' %os.getpid() pid = os.fork() if pid==0: print 'I am child (%s) and my father is %s.'%(os.getpid(),os.getppid()) else: print 'I (%s) just created a child process (%s).' %(os.getpid(),pid)
加载os模块后,首先os.fork()函数生成一个子进程,返回值pid有两个,一个为0,
用以表示在子进程当中,一个是大于0的整数,表示在父进程,这个常数正是子进程的pid.
if pid == 0,在子进程当中os.getpid()是子进程的pid,os.getppid()是父进程pid
if pid >0 ,在父进程当中,os.getpid()是父进程的pid,os.fork()返回的就是子进程的pid
例2
import os def child(): print 'A new child:', os.getpid() print 'Parent id is:', os.getppid() os._exit(0) def parent(): while True: newpid=os.fork() print newpid if newpid==0: child() else: pids=(os.getpid(),newpid) print "parent:%d,child:%d"%pids print "parent parent:",os.getppid() if raw_input()=='q': break parent()
以上这篇在Python中os.fork()产生子进程的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。