gpt4 book ai didi

windows - 使用 Cygwin 从 Windows 运行 fork(2)。可能的?

转载 作者:IT王子 更新时间:2023-10-29 01:17:52 24 4
gpt4 key购买 nike

我正在尝试使用一个名为 shotgun 的 Ruby gem,它需要 fork(2) 命令,我发现它是一个 Linux 命令,并且可能在 Cygwin 中可用。是否可以通过 Windows 命令 shell 使其可用?

最佳答案

fork(2) 在 Cygwin 下很麻烦,因为 Windows 进程模型不容易允许它发生。 Cygwin 可能允许它的 spawn 使用它,但你将遭受严重的性能损失,因为 Cygwin 必须手动模拟所有内容——包括复制可执行数据、复制打开的句柄等。

根据 shotgun 使用 fork(2) 的程度,这种模拟可能会很痛苦,也可能相对较小。

这是一个 good thread on GameDev.net讨论在 Win32 上缺少 fork 工具。他们提出了一些我没有耐心或平台可访问性来调查的东西,但同时听起来很有趣、危险和爆炸性:

So, you need to bypass Win32 and call the native API ({Nt|Zw}CreateProcess). The book "Windows Nt/2000 Native Api Reference" has an example "Forking a Win32 Process". This may be what you need.

我很好奇,但我怀疑 Cygwin 使用它。它可能在那里,重申我对你的问题的回答——许多 Unix 应用程序依赖于 fork,而 Cygwin 可能使它可用。不要指望奇迹,您必须通过重新编译以包含其仿真层来让 Ruby 了解 Cygwin。

关于windows - 使用 Cygwin 从 Windows 运行 fork(2)。可能的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1814903/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com