问题标签 [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 投票
1 回答
851 浏览

linux - Linux 进程生成/创建触发器

我正在尝试以编程方式跟踪 linux 用户当前正在运行的进程。当用户 fork-ed 或 exec-ed 一个新进程时是否有可能得到通知,或者是唯一的解决方案来永久轮询进程列表以查找新进程。

谢谢,

0 投票
1 回答
7900 浏览

php - 监控使用 PHP 分叉的子代

我有一个问题,我使用 pcntl_fork 在 PHP 中 fork 一个进程,

我试图找出一种方法来监视在父叉中作为子执行的 PHP 脚本的状态。有什么方法可以知道子进程是否仍在运行,或者在子脚本执行期间是否出现任何致命错误,并使用捕获从子进程到父进程的所有消息;

谢谢和问候,
阿伦·尚克·普拉萨德。

0 投票
1 回答
277 浏览

open-source - 管理 Maven 依赖项的本地分支

所以我有一个依赖项,实际上是两个依赖项,我现在想对其进行更改,例如修复JBSEAM-3424,或者可能在未来进行更改。编码不是问题——我有能力做出改变——我不是为了分叉社区项目,只是为了有一个Will Hartung推荐的本地版本来完成一些工作。

我担心的是流程问题会出现并进一步咬我。所以我能做些什么来确保我正确地管理它。有哪些最佳实践?

一些更具体的子问题:

  • 我应该更改工件名称吗?
  • 如何选择组工件和版本名称?
  • 我应该导入整个源代码树还是有选择性?
  • 如果我不能让构建系统完全工作怎么办——我应该缩小它还是尽量让它接近原始系统?
0 投票
2 回答
15075 浏览

php - 在后台运行一个ffmpeg进程

我想在 php 中使用 ffmpeg 将视频转换为 .flv。目前我有这个工作,但它会挂起浏览器,直到文件上传并完成。我一直在查看有关如何在后台运行 exec() 进程的 php 文档,同时使用返回的 PID 更新进程。这是我发现的:

还有一个技巧可以用来跟踪后台任务是否正在使用返回的 PID 运行:

我是否想创建一个单独的 .php 文件,然后从 php cli 运行以执行这些功能之一?我只需要一点点推动它就可以正常工作,然后我就可以从那里开始了。

谢谢!

0 投票
2 回答
15500 浏览

multithreading - 多线程程序中的fork

我听说在程序中混合分叉和线程可能会产生很大的问题,通常会导致神秘的行为,尤其是在处理共享资源时,例如锁、管道、文件描述符。但我从来没有完全理解危险到底是什么,什么时候会发生。如果有该领域专业知识的人能够更详细地解释什么是陷阱以及在这样的环境中编程时需要注意什么,那就太好了。

例如,如果我想编写一个从各种不同资源收集数据的服务器,我想到的一个解决方案是让服务器产生一组线程,每个线程都会调用另一个程序来完成实际工作,打开管道从孩子那里取回数据。这些线程中的每一个都响应自己的工作,它们之间没有数据交换,并且当收集数据时,主线程有一个队列,这些工作线程只会将结果放入队列中。这个解决方案会出现什么问题?

请不要仅通过“回答”我的示例场景来缩小您的答案。任何与示例无关但有助于提供简洁设计的建议、替代解决方案或经验都会很棒!谢谢!

0 投票
4 回答
2993 浏览

c - 在 C 中控制分叉

我有一个看起来像这样的 C 文件:

我需要修改它以产生一个看起来像的层次结构

基本上是一个树结构,其中每个第二个孩子产生两个新孩子。据我了解,当我fork()一个进程时,每个进程都会同时运行。fork()在语句中添加 aif似乎可以正常工作并正确创建进程 0 到 2,因为只有父进程会创建一个新的分叉。但我不知道如何制作流程 2 的分叉而不是流程 1。有什么想法吗?

0 投票
5 回答
4646 浏览

c++ - 关于 fork 系统调用和全局变量

我在 C++ 中有这个程序,它分叉了两个新进程:

两个分叉的进程对共享变量进行增量,父进程也这样做。由于该变量属于每个进程的数据段,所以最终值为10,因为增量是独立的。

不过共享变量的内存地址是一样的,可以尝试编译,观察程序的输出。这怎么解释?我无法理解,我以为我知道 fork() 是如何工作的,但这似乎很奇怪..

我需要解释为什么地址相同,尽管它们是单独的变量。

0 投票
5 回答
3761 浏览

perl - 如何在 Perl 中向分叉的孩子发出信号以终止?

如何在分叉的进程之间共享相同的变量?或者我是否需要写入父文件中的文件,然后在文件存在后读取保存到子文件中的值?$something 似乎永远不会在此设置,因此它只是在睡眠中循环

0 投票
7 回答
1749 浏览

c - cat/Xargs/command VS for/bash/command

Linux 101 Hacks 一书的第 38 页建议:

我通常这样做:

除了长度之外,xargs 技术是否优于 bash 中旧的 for-loop 技术?

添加

C 源代码似乎只有一个 fork 。相比之下,bash-combo 有多少个分叉?请详细说明问题。

0 投票
1 回答
539 浏览

svn - 将主干合并到分叉的分支中

希望这是有道理的:在颠覆中,如果我分支一个主干然后分叉该分支,我可以将主干的更改合并到分叉的分支中吗?