7

Unix to Windows Porting Dictionary for HPC 页面上 fork() 它是这样写的

没有与 Unix fork() 或 vfork() 等效的 Windows API。Microsoft 基于 Unix 的应用程序子系统(SUA 或 Interix)是一个 Unix 环境,正确实现了 fork() 和 vfork()。

在页面上还有使用...标准 Win32 APICreateProcess函数的示例源代码。

我很困惑。
该示例不应该使用 fork() 来说明有关由 SUA/Interix 实现的 fork() 的语句吗?
如果 fork() 真的实现了,它存在于哪个头文件和 lib 文件中?

4

1 回答 1

4

您正在查看的页面是 *nix 到 Windows 移植指南。它没有向您展示如何使用fork(),而是最接近的 win32 等价物,CreateProcess. 那里的页面记录了您应该使用哪些 Win32 函数而不是 Unix 函数。

您需要 Unix 子系统和SUA SDK才能使用fork(). 在那里,您将在 Windows 上获得一个 *nix 环境,fork()将在通常的unistd.h库中,并且您将链接到libc.so(使用 gcc)以使用它。

于 2011-03-20T21:30:01.027 回答