我的情况是这样的:在MacOS / X中,我调用AuthorizationExecuteWithPrivileges来生成特权子进程,而与子进程进行通信的唯一方法是调用fread()
并/或fwrite()
文件句柄上的FILE *
由该调用的最后一个参数返回给我。
我想做的是向子进程表明它应该消失,这可以通过在文件句柄上调用fclose()
来完成–子进程看到其STDIN_FILENO
具有关闭并退出。
但是,我还希望能够在退出之前读取子进程打印到其stdout
流上的任何文本,但是在文件句柄上调用fclose()
则可以做到这一点。
所以我的问题是,有没有办法“ {-{1}}”半关闭,以使它可以关闭写作但仍然可以打开阅读?我正在想象类似于shutdown(SHUT_WR)的东西,可以在套接字描述符上使用。