我想用函数:
pid_t tcgetpgrp(int fildes);
Run Code Online (Sandbox Code Playgroud)
如何检索fildes(要传递给此函数).
并且此函数返回的进程组ID与返回的进程组ID相同
getpgrp(0)//0 for the calling process
Run Code Online (Sandbox Code Playgroud)
??
通常标准输入,输出和/或错误(0,1或2)将连接到控制终端.确保只需打开/ dev/tty,如果有的话,它将永远是控制终端.从open()返回的文件描述符可以传递给tcgetpgrp(),然后在不再需要时关闭.
tcgetpgrp()函数返回前台进程组ID,而getpgrp()返回进程组ID.如果您的流程位于前台,它们将是相同的,如果您的流程在后台,则它们将是不同的.如果您的进程没有控制终端,tcgetpgrp()将返回错误,因此不在前台或后台.