2012-04-17 107 views
3

如果您对父进程执行fork()并创建子进程,然后子进程关闭从fork继承的fd。父/子进程关闭文件描述符

文件在父文件中保持打开状态,因为它们是独立的?标准I/O或标准错误呢?

回答

3

无论它们代表文件还是设备(包括标准I/O描述符),如果在一个进程中关闭,其他进程仍然有一个有效的描述符。

这很自然。如果一个子进程意外崩溃,那么当检测到父进程通过任何以前打开的描述符时,父进程甚至难以记录这个事实,因为所有形式的进程退出都涉及关闭所有打开的描述符。

相关问题