Python os.fork(), os.getpid(), os.getppid()
#此博客为本人学习笔记,非教程,可能有诸多谬误,不能作为权威参考。如有错误欢迎大家指正!
pid: process identifier
os.fork()用于创建子进程,返回值为int,其中包括父进程中子进程的id以及代表子进程的0
os.getpid()可获取当前进程id,返回值为int
os.getppid()可获取父进程id,返回值为int
import os
pid = os.fork()
print(pid)
if pid > 0:
print("I am a parent process:")
print(f"Process ID:{os.getpid()}")
print(f"Child's process ID:{pid}")
else:
print("I am a child process:")
print(f"Process ID:{os.getpid()}")
print(f"Parent's process ID:{os.getppid()}")
输出结果为:
98928
I am a parent process:
Process ID:98926
Child's process ID:98928
0
I am a child process:
Process ID:98928
Parent's process ID:98926
能看到创建的父进程和子进程为两个独立的进程,分别打印,分别进行条件判断。