我想知道C(Linux)中是否有任何函数,以了解某个特定pgid有多少个进程。例如:
PID PGID PPID COMMAND 9024 27852 27855 ./asdf 9033 27852 27856 ./asdf 9035 27852 27854 ./asdf 9037 27852 27856 ./asdf 9039 27852 27854 ./asdf
如果有这些进程,函数(27852)将返回5个进程。
简洁地说,不-AFAICT。
POSIX提供了许多用于处理进程组的功能,但是没有提供查询功能以找出哪些进程属于指定的进程组。这与其他系统调用一致;没有系统调用返回“感兴趣的项目”的完全开放式列表。
getpgid()
setpgid()
getpgrp()
setpgrp()
killpg()
您可以在killpg()中搜索Linux手册页:
posix_spawnattr_getpgroup()
与POSIX中的名称相同;没有其他相关的条目出现。