我可以打开套接字并将其传递给 Linux 中的另一个进程吗
- 2024-10-22 08:28:00
- admin 原创
- 216
问题描述:
在 Linux 中,我是否可以打开套接字并将该套接字传递给另一个进程?如果可以,您能告诉我在哪里可以找到示例吗?
谢谢。
解决方案 1:
是的,你可以,使用sendmsg()
SCM_RIGHTS 从一个进程到另一个进程:
SCM_RIGHTS
- 从另一个进程发送或接收一组打开的文件描述符。数据部分包含文件描述符的整数数组。传递的文件描述符的行为就像它们是用 创建的一样
dup(2)
。
http://linux.die.net/man/7/unix
但这不是典型的用法。更常见的情况是,一个进程从其父进程继承套接字(在之后fork()
)。任何未关闭的文件句柄(包括套接字)都将可供子进程使用。因此,子进程继承了父进程的套接字。
监听连接的服务器进程称为守护进程。它通常在每个新连接上分叉,生成一个进程来处理每个新请求。典型守护进程的示例如下:
http://www.steve.org.uk/Reference/Unix/faq_8.html#SEC88
向下滚动至 void process()
。
相关推荐
热门文章
项目管理软件有哪些?
热门标签
云禅道AD