问题标签 [fork]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2146 浏览

perl - 如何在 Perl 中分叉一个新进程并取回它的 PID?

我的问题与fork()在 Perl 代码中使用有关。我希望派生一个新进程并捕获其 PID 并将其返回给被调用程序。Perl 中是否有一些命令可以使这成为可能?

0 投票
2 回答
240 浏览

c - 运行函数暂停父函数

嘿那里,只是练习,我有一个问题。我有一个程序(下面的源代码)可以打印出文本中的波形。当波击中终端外部时,我让它用一个名为noise()的函数发出噪音。但是当调用该函数时,它会暂停动画,直到它完成发出噪音,然后动画再次开始。

我想知道是否有人知道两种功能同时发生的方法。我应该 fork() 它还是有更好的方法?

我指的代码是lattus函数和噪声函数。

下面是我的程序的完整来源:

0 投票
8 回答
127850 浏览

bash - 分叉/多线程进程 | 重击

我想让我的一部分代码更有效率。我正在考虑将其分成多个进程,并让它们一次执行 50/100 次,而不是只执行一次。

例如(伪):

我希望这个 for 循环运行多次。我知道这可以通过分叉来完成。它看起来像这样吗?

还是我想错了?

谢谢!

0 投票
8 回答
11142 浏览

java - 为什么 ant.bat 以编程方式运行时不返回错误状态?

当我从命令行运行 ant 时,如果失败,我会得到一个非零退出状态($? 在 UNIX 上,%ERRORLEVEL% 在 Windows 上)。但是我们有一个运行 ant 的 Java 程序(通过 ProcessBuilder),当 ant 失败时,在 Windows 上我们无法获得退出状态。

我刚刚用这个简单的 ant 测试文件验证了这一点:

在 UNIX 上,运行 ant 会打印一条失败消息,并回显 $? 之后打印 1。在 Windows 上,运行 ant 或 ant.bat 打印失败消息,然后回显 %ERRORLEVEL% 打印 1。

现在,使用下面的测试程序: 在 UNIX 上,java Run ant 打印一条失败消息,并回显 $? 之后打印 1. 在 Windows 上, java Run ant 找不到要运行的名为 ant 的程序,但 java Run ant.bat 打印失败消息,但回显 %ERRORLEVEL% 之后打印0。是什么赋予了?

我们依赖于能够在运行 ant 后检查退出状态。反正我们是。为什么我们不能以编程方式依赖它?

测试程序:

0 投票
5 回答
2094 浏览

c - 在 C 中从父母那里分叉任意数量的孩子?

我已经找到了如何通过以下方式分叉多个孩子的示例:

但如果我不知道我需要多少个孩子,我该怎么做呢?

例如,如果我有一个命令的链接列表,并且我想为每个命令分叉和执行......所以我想我也需要知道它是哪个孩子......

0 投票
6 回答
18089 浏览

php - PHP mysqli 重连问题

我在 PHP 中使用 mysqli 类时遇到问题,我无法在任何地方找到答案。

在我的脚本中,一个类创建了一个 mysqli 连接,它在整个函数中使用。之后,此脚本分叉。孩子们也使用该连接,但是当孩子们死亡时,我遇到了在父母中关闭连接(MYSQL Server Has Gone Away)的问题。

在我切换到 mysqli(只是使用 mysql)之前,我只是调用了 mysql_ping 以确保在父进程中执行查询之前存在 db 连接。Mysqli 具有类似的 ping 功能,但如果连接消失,它实际上不会重新连接。我尝试使用 mysqli.reconnect=ON 全局设置但没有成功(使用 php.ini 和 ini_set)。

php mysql_connect 函数允许您获取一个已经存在的连接,所以如果我使用 mysql 而不是 mysqli,我可以在进程分叉后立即在子进程中重用该连接。但是 mysqli 似乎没有任何这样的功能......

我唯一能做的就是调用 mysqli->ping() 如果返回 false 然后重新连接到父数据库。这是非常低效的,我宁愿弄清楚如何用 mysqli 正确地做到这一点(并且不需要手动重新连接)必须改回 mysql ..

有什么建议么?

0 投票
4 回答
688 浏览

fork - 为什么我的防病毒程序没有检测到这种恶意行为?

我编写了这个 C 程序并在我的 Windows 系统上运行。我的系统挂起,甚至任务管理器都没有打开。最后,我不得不重新启动。这显然是一个恶意程序,但我的防病毒软件没有检测到这一点。为什么?

0 投票
1 回答
844 浏览

gcc - 在 Windows 上使用 gcc 分叉

我在使用 gcc (cygwin) 的 windows 程序中使用 fork。它在我的系统上运行良好。但我想在没有 cygwin 的其他系统上运行。我怎样才能做到这一点?

0 投票
5 回答
1326 浏览

c - C - 如何找到以前由 tmpfile() 创建的临时文件?

我正在开发一个多进程程序,该程序基本上对 RVB 文件的每一层执行模糊化。(1 个进程 -> 1 层)。每个子进程都使用以下函数传递一个临时文件:tmpfile(). 每个子进程完成其工作后,主进程必须读取创建的每个临时文件并组装数据。问题是我不知道如何读取主进程中的每个临时文件,因为我无法访问子进程的内存,所以我不知道创建的临时文件的临时指针是什么!

任何的想法?

如果需要,请随时要求澄清。

0 投票
1 回答
145 浏览

c - 为什么只有我的前 x 个叉子才能完成这项工作(gcc)

这是来自我的学习指南。从我的角度来看,这几乎完成了,但我不能让它按照我想要的方式工作。练习是:

给定一个字符串叉 X 次,并为每个孩子打印一个字符,直到字符串完成。

这是代码并编译:

这是我得到的输出

所有的回声都应该像前五个一样。

任何的想法?