You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于libuv中uv_write2第五个参数send_handle含义的技术问询

uv_write2 中 send_handle 参数的作用

uv_write2 是 libuv 专门用于**在流式传输通道(主要是 Unix 域套接字)上传递句柄(如文件描述符、套接字句柄)**的函数,你看到的上层源码仅将其赋值给 uv_write_t req 的 send_handle 属性,是因为实际的句柄传递逻辑在平台相关的底层实现中,而非公共上层代码内。

具体细节:

  • 第一个句柄参数是写入数据的目标流(比如已连接的 Unix 域套接字),负责承载数据和待传递的句柄;
  • send_handle 就是你要传递给对端的目标句柄,支持 uv_tcp_t、uv_udp_t、uv_file_t 等类型,底层会通过系统调用(如 Unix 下的 sendmsg)把该句柄对应的文件描述符发送给对端。

典型使用场景:进程间通过 Unix 域套接字传递已打开的文件描述符,或是传递已建立的套接字连接时,就需要通过 send_handle 指定要传递的目标句柄。

需要注意:只有当目标流是支持文件描述符传递的类型(如 Unix 域套接字)时,send_handle 参数才会生效,TCP 这类不支持句柄传递的流类型会忽略该参数。


内容的提问来源于stack exchange,提问作者jasonjifly

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 11:34:54