您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

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

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

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

根据shot弹枪的使用量fork(2),此模拟可能很痛苦,也可能相对较小。

这是GameDev.net上一个好话题,讨论了forkWin32上缺少功能的问题。他们提出了一些我没有耐心或平台可访问性的内容,但同时听起来很有趣,危险且具有爆炸性:

因此,您需要绕过Win32并调用本机API({Nt | Zw} CreateProcess)。《 Windows Nt / 2000本机Api参考》一书中有一个示例“ Forking Win32 Process”。这可能就是您所需要的。

我很感兴趣,但是我怀疑Cygwin使用它。重申我对您的问题的回答可能就在这里- 许多Unix应用程序都依赖fork,而Cygwin可能会使其可用。只是不要指望奇迹,您必须通过重新编译Ruby来包含它的仿真层,从而使Ruby意识到Cygwin。

其他 2022/1/1 18:17:44 有716人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶