Python os.getpgid()
Python os模块中的所有函数在文件名和路径无效或不可访问,或其他具有正确类型但操作系统不接受的参数时都会引发OSError。
在类unix操作系统中,进程组表示一个或多个进程的集合。它用于控制信号的分布,即当一个信号指向一个进程组时,进程组的每个成员都接收到该信号。使用进程组id唯一标识每个进程组。
Python中的os.getpgid()方法用于获取具有指定进程id的进程的进程组id。如果指定的进程号为0,则返回当前进程的进程组号。当前进程的进程组id也可以使用os.getpgrp()方法获得。
注意:os.getpgid()方法只在UNIX平台上可用。
语法:os.getpgid(pid)
参数:
pid:整型值,表示需要查找进程组id的进程id。如果pid为0,则表示当前进程。
返回类型:该方法返回一个整数值,表示指定进程id的进程的进程组id。
示例1
使用os.getpgid()方法
# Python program to explain os.getpgid() method
# importing os module
import os
# Get the process group id
# of the current process
# using os.getpgid() method
pid = os.getpid()
pgid = os.getpgid(pid)
# Print the process group id
# of the current process
print("Process group id of the current process:", pgid)
# If pid is 0, process group id
# of the current process
# will be returned
pid = 0
pgid = os.getpgid(pid)
print("Process group id of the current process:", pgid)
# Get the process group id
# of the current process
# using os.getpgrp() method
pgid = os.getpgrp()
print("Process group id of the current process:", pgid)
# Get the process group id
# of the parent process
pid = os.getppid()
pgid = os.getpgid(pid)
print("process group id of the parent process:", pgid)
输出:
Process group id of the current process: 18938
Process group id of the current process: 18938
Process group id of the current process: 18938
process group id of the parent process: 11376