提问人:Roland Mainz 提问时间:11/18/2023 最后编辑:Remy LebeauRoland Mainz 更新时间:11/18/2023 访问量:58
Win32 版本的 fcntl(..., F_DUPFD. ...)?
Win32 version of fcntl(..., F_DUPFD. ...)?
问:
Win32 有 、 等 - 但是是否有 Win32 版本可以复制给定的文件描述符,并使用比给定参数更大的最低可用文件描述符(例如,这不是 Win32 或 !!)?_open()
_open_osfhandle()
fcntl(..., F_DUPFD. ...)
_dup()
_dup2()
我基本上是在寻找 Win32 的此函数的 Linux/Solaris/Illumos 实现,或仿真代码:fcntl()
F_DUPFD (int)
Duplicate the file descriptor fd using the lowest-numbered
available file descriptor greater than or equal to arg.
This is different from dup2(2), which uses exactly the
file descriptor specified.
答: 暂无答案
评论
_open
和 cousins 由 Windows 上的通用 CRT 中的兼容层提供。本机操作系统的运行方式不同,并且 的值被认为是不透明的,因此不需要功能。在 Win32 上不能保证 s 将按顺序分配。因此,有很多方法可以在 Win32 上做类似的事情,但不是您要求复制到尽可能低的句柄的方法。那根本不是一回事。HANDLE
HANDLE
HANDLE
fcntl