日期:2014-05-16  浏览次数:20573 次

UNIX的文件描述符传递问题
我有个问题,就是通过UNIX域套接口可以进行跨进程的文件描述符的传递,
但是,我也可以直接给那个进程一个文件路径名啊,这样不是更简单么?
也就是说一般有哪些需求是要求跨进程传递文件描述符的啊?

------解决方案--------------------
这个richard stevens 在APUE 中讲过的:
主要是守护进程,也就是server 进程。

通常的上下文是:
当server 收到一个client 请求时,做一次fork,
这样在child process中可以直接操作fd,而在parent process中关闭该fd.

也就是说"跨进程传递文件描述符"是有条件的: 必须是parent-child 关系。