from where pclose gets pid

from where pclose gets pid

本文关键字:pid gets pclose where from      更新时间:2023-10-16

pclose函数的文档中有一部分代码演示了如何实现pclose()函数

int pclose(FILE *stream)
{
    int stat;
    pid_t pid;

    pid = <pid for process created for stream by popen()>
    (void) fclose(stream);
    while (waitpid(pid, &stat, 0) == -1) {
        if (errno != EINTR){
            stat = -1;
            break;
        }
    }
    return(stat);
}

所以我很有趣,形式,他得到"pid为流创建的进程由popen()"。是否有存储这个值的地方?

从实现popen()pclose()的库拥有的一些内部状态。最有可能的是,它将作为一个字段存储在(内部)FILE结构中。