python中os.fork()函数的一点理解
【时间】2018.12.05
【题目】python中os.fork()函数的一点理解
1、功能:os.fork()函数用于在程序创建出新的进程分支,会从调用此函数的地方创建出子进程,调用后返回进程id,此id在原本的进程(即父进程)中是刚创建的子进程的id,而在刚创建出的子进程中是0.
2、os.fork()只能在Linux中适用,若在windows系统中使用,会提示错误:os中没有‘fork’函数
3.os.fork()函数会从调用此函数的地方创建出子进程,子进程会从此处继续运行下去,跟主进程一起,下面是测试代码:
import os
def child():
print('Hello from child', os.getpid())
def parent():
for i in range(3):
print(i)
newpid = os.fork()
if newpid == 0:
child()
else:
print('Hello from parent', os.getpid(), newpid)
parent()
【运行结果】:
其中,主进程10471分支除了子进程10472,10473,10474,其中子进程10472又分支出了子进程10475(之后分支出了子进程10477)与10476,子进程10473又分支出了子进程10478。