问题标签 [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.
perl - 如何在 Perl 中分叉一个新进程并取回它的 PID?
我的问题与fork()
在 Perl 代码中使用有关。我希望派生一个新进程并捕获其 PID 并将其返回给被调用程序。Perl 中是否有一些命令可以使这成为可能?
c - 运行函数暂停父函数
嘿那里,只是练习,我有一个问题。我有一个程序(下面的源代码)可以打印出文本中的波形。当波击中终端外部时,我让它用一个名为noise()的函数发出噪音。但是当调用该函数时,它会暂停动画,直到它完成发出噪音,然后动画再次开始。
我想知道是否有人知道两种功能同时发生的方法。我应该 fork() 它还是有更好的方法?
我指的代码是lattus函数和噪声函数。
下面是我的程序的完整来源:
bash - 分叉/多线程进程 | 重击
我想让我的一部分代码更有效率。我正在考虑将其分成多个进程,并让它们一次执行 50/100 次,而不是只执行一次。
例如(伪):
我希望这个 for 循环运行多次。我知道这可以通过分叉来完成。它看起来像这样吗?
还是我想错了?
谢谢!
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 后检查退出状态。反正我们是。为什么我们不能以编程方式依赖它?
测试程序:
c - 在 C 中从父母那里分叉任意数量的孩子?
我已经找到了如何通过以下方式分叉多个孩子的示例:
但如果我不知道我需要多少个孩子,我该怎么做呢?
例如,如果我有一个命令的链接列表,并且我想为每个命令分叉和执行......所以我想我也需要知道它是哪个孩子......
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 ..
有什么建议么?
fork - 为什么我的防病毒程序没有检测到这种恶意行为?
我编写了这个 C 程序并在我的 Windows 系统上运行。我的系统挂起,甚至任务管理器都没有打开。最后,我不得不重新启动。这显然是一个恶意程序,但我的防病毒软件没有检测到这一点。为什么?
gcc - 在 Windows 上使用 gcc 分叉
我在使用 gcc (cygwin) 的 windows 程序中使用 fork。它在我的系统上运行良好。但我想在没有 cygwin 的其他系统上运行。我怎样才能做到这一点?
c - C - 如何找到以前由 tmpfile() 创建的临时文件?
我正在开发一个多进程程序,该程序基本上对 RVB 文件的每一层执行模糊化。(1 个进程 -> 1 层)。每个子进程都使用以下函数传递一个临时文件:tmpfile()
. 每个子进程完成其工作后,主进程必须读取创建的每个临时文件并组装数据。问题是我不知道如何读取主进程中的每个临时文件,因为我无法访问子进程的内存,所以我不知道创建的临时文件的临时指针是什么!
任何的想法?
如果需要,请随时要求澄清。
c - 为什么只有我的前 x 个叉子才能完成这项工作(gcc)
这是来自我的学习指南。从我的角度来看,这几乎完成了,但我不能让它按照我想要的方式工作。练习是:
给定一个字符串叉 X 次,并为每个孩子打印一个字符,直到字符串完成。
这是代码并编译:
这是我得到的输出
所有的回声都应该像前五个一样。
任何的想法?