python中fork()的调用

python中fork()的调用

1、说明

fork() 可以在 python 程序中轻松创建子进程,实现多进程。

Unix/Linux 操作系统(比如常见的 Mac 咯)提供了一个 fork() 系统调用,它被调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后分别在父进程和子进程内返回。

2、实例

importos
print("正在运行的进程是%s..."%os.getpid())
pid=os.fork()#如果是子进程返回0,而父进程返回子进程的ID,有了fork调用,一个进程在接到新任务时就可以复制出一个子进程来处理新任务,常见的Apache服务器就是由父进程监听端口,每当有新的http请求时,就fork出子进程来处理新的http请求。
print("\rpid是%s"%pid)
ifpid==0:
print("子进程是%s和父进程是%s."%(os.getpid(),os.getppid()))
else:
print("在父进程%s中创建了子进程%s."%(os.getpid(),pid))