1 个不稳定版本
| 0.1.0 | 2019 年 4 月 11 日 |
|---|
#14 in #exec
12KB
146 行
closefds
closefds 是一个库,为 UNIX 类系统在 fork 之后和 exec 之前设置所有打开的文件描述符的 FD_CLOEXEC 标志提供支持。
未标记此标志的任何文件描述符在 exec() 后将保持打开状态,这可能导致资源泄漏并可能导致死锁。理想情况下,每当创建一个文件描述符时,它都应该已经带有 FD_CLOEXEC 标志。然而,在某些情况下这可能并不可能,例如,在使用不支持 FD_CLOEXEC 标志的外部库或系统调用时,例如 pipe()。
函数 close_fds_on_exec() 将创建一个闭包,该闭包可以作为通过 Command 接口启动子进程时的 pre_exec() 函数传递,并将适当的 FD_CLOEXEC 标志设置在打开的文件描述符上。
lib.rs:
closefds 是一个库,为 UNIX 类系统在 fork 之后和 exec 之前设置所有打开的文件描述符的 FD_CLOEXEC 标志提供支持。
未标记此标志的任何文件描述符在 exec() 后将保持打开状态,这可能导致资源泄漏并可能导致死锁。理想情况下,每当创建一个文件描述符时,它都应该已经带有 FD_CLOEXEC 标志。然而,在某些情况下这可能并不可能,例如,在使用不支持 FD_CLOEXEC 标志的外部库或系统调用时,例如 pipe()。
函数 close_fds_on_exec() 将创建一个闭包,该闭包可以作为通过 Command 接口启动子进程时的 pre_exec() 函数传递,并将适当的 FD_CLOEXEC 标志设置在打开的文件描述符上。
依赖关系
~230KB