问题标签 [spawn]

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 投票
3 回答
3613 浏览

c - 产生一个独立的孩子

您如何使用 C 来生成一个独立的子进程,它可以在不考虑父亲的情况下开展其业务?

我想产生几个进程,在它们创建后不久,它们会在完成工作之前休眠大约 2 分钟。

但是,我不希望父亲等到孩子完成,因为与此同时我想产生更多的进程。

我在Linux上。

0 投票
1 回答
800 浏览

process - 主管子与普通 spawn_link

我有一个名为“monitor_node”的进程层次结构。这些monitor_nodes中的每一个都由一个监督者监督。

现在,这些节点中的每一个都可能具有复杂的内部结构。意思是,它可能(或可能没有)具有正常运行所需的一些子流程。示例:发送保持活动消息的进程。到目前为止,我一直在使用普通的 spawn_link 来创建这些“内部”进程。

但是,我已经意识到在 monitor_node 的 init 函数中生成它们(正在被监督)有时会导致该函数失败(因此整个监督树失败)。我的问题是:将这些内部流程附加到主管树是否是一个好的解决方案?我正在考虑将 monitor_node 更改为监督其内部流程的主管。

我的疑问是:

  1. 我将不得不监督相当数量的非常小的流程。我不确定这是否是一个好习惯。

  2. 我可能事先不知道给定的“内部”流程是一个简单的流程或具有一些内部结构(也产生其他流程)。如果是后者,那么我可能应该将这些“内部-内部”进程附加到主管树。

我希望我没有让你太困惑。期待答案。

编辑:

此处讨论了一个非常相似(如果不相同)的问题(第 3 篇文章)。给出的解决方案与我给出的废话答案几乎相同。

0 投票
1 回答
1382 浏览

node.js - 使用 NodeJS child_processes.spawn 运行脚本时打开的文件太多

设想:

使用主脚本生成数量不定的子进程,次数不定,以便对服务器执行负载测试。

主脚本最初会生成它可以生成的所有子进程(根据其配置设置),然后当子进程退出时,如果配置请求更多运行,则启动新的子进程。

我看到的是在尝试启动第 83 个子进程时立即失败。83?

我没有做任何事情来明确关闭作为子生成过程的一部分打开的文件,但大概这不是打开代码的工作,而是 child_processes 模块代码的工作?

我很好奇 82 个子进程的神奇数字。这似乎表明节点的限制或我系统上的某些节点组合?

理想情况下,我对这个问题会回答一些知识缺乏了解,或者有人可以建议另一种方法来启动不会遇到此问题的脚本子进程?

我也有兴趣了解 NodeJS 即将到来的 Web Worker API 的状态。有人知道吗?

细节:

  • NodeJS v0.4.7
  • Mac OS X v10.6.7
  • ulimit -n = 256
  • 将成功运行的生成子对象的幻数 = 82(意味着 > 82 个生成的 proc 将引发“打开的文件过多”错误)

谢谢你的帮助。

0 投票
1 回答
2732 浏览

tcl - 期望 spawn 没有执行

嗨,我有以下名为 a.exp 的期望脚本

其中 a.txt 包含以下单行字符串文本

接下来我使用以下命令使其可执行

现在,我按如下方式运行它

我得到的输出如下

另一方面,如果我使用以下脚本

代替

它会打印 a.txt 文件的内容。PLZ你能帮我用spawn来执行它吗?谢谢!

0 投票
1 回答
496 浏览

python - 在 Python 中生成安全、独立于平台的虚拟进程

我正在编写一些需要在不同操作系统平台上运行并与单独进程交互的代码。要为它编写测试,我需要能够从 python 创建进程,这些进程除了等待发出停止信号之外什么都不做。我希望能够创建一些递归创建更多的过程。

另外(这部分可能有点奇怪),如果我能够创建不是创建进程的子进程的进程,那么我的测试将是最好的,这样我就可以模拟条件,例如,os.waitpid没有权限与流程交互,或者一个流程向工厂发出信号以创建流程而不是直接创建流程。

0 投票
2 回答
2930 浏览

erlang - 理解 spawn 的返回值

我开始使用 Erlang,并且在将返回的 PID 应用spawn/3process_info/1方法时可以帮助理解不同的结果。

给定这个a/0导出函数的简单代码,它只是调用b/0等待消息的 :

...请帮助我了解 shell 输出不同的原因:


示例 1:

在这里,current_functionofPid显示为tester:b/0


示例 2:

在这里,current_functionofprocess_info/1显示为tester:a/0


示例 3:

在这里,current_functionofprocess_info/1显示为tester:a/0,但current_functionofPidtester:b/0


我假设在调用时会在后台发生一些异步代码spawn/3,但是变量赋值和参数传递如何工作(尤其是在最后一个示例中)以Pid获取一个值并process_info/1获取另一个值?

在这种情况下,Erlang 中是否有一些特殊的东西可以绑定变量赋值,但没有为参数传递提供这种绑定?


编辑:

如果我使用这样的函数:

...消息从以下位置正确返回tester:b/0

但如果我使用这样的函数:

...process_info/1仍然显示tester:a/0

不知道该怎么做。也许我只需要接受它高于我的工资等级!

0 投票
2 回答
1701 浏览

erlang - Erlang 生成问题

我在 erlang 中遇到了“spawn”的问题,似乎进程在一段时间后就死了。这是简单的代码:

这是我在运行它时得到的一个例子:

我不明白。进程只是死了还是什么?它不应该终止!如果它可能与 Windows 相关,我正在 Windows 7 上运行。

谢谢

编辑:继承人通过执行应用程序会发生什么:开始(sasl)。前:

0 投票
2 回答
1526 浏览

javascript - Node.js - 生成 gzip 进程

我正在尝试使用 Node.js 压缩一些数据...

具体来说,我在“buf”中有数据,我想将其压缩形式写入“流”。

这是我的代码:

问题是,它根本行不通!我不确定生成进程并将数据传送给它们的确切语法。

非常感谢任何帮助。

提前谢谢了,

编辑:这是我得到这个想法的原始工作代码。该项目位于:https ://github.com/indutny/node.gzip

任何人都可以弄清楚如何在 node.js 中生成这个,因为我完全被卡住了!


0 投票
1 回答
916 浏览

linux - 如何在 Linux 中使用 sig*set 函数?

我正在尝试将对 spawnp 的调用转换为 fork-exec。但是在我正在处理的代码中,他们使用继承数据结构将一些信号设置传递给子进程。这些如下:

如何在不使用 spawnp 的情况下传递信号设置?我是否使用 sigfillset 和 pthread_procmask 函数?如果是这样,这种语法是否正确?如果我只是在 sigfillset() 中设置 sigset 变量,这些设置将如何传递给相关进程?

感谢你的帮助 !

0 投票
1 回答
469 浏览

java - 从servlet产生线程?

我有一个 servlet,它调用 Web 服务,并获取数据以填充 servlet 响应。我也不想等太久。我可以只生成一个新线程并调用 Web 服务吗?如果不建议这样做,有什么更好的方法?

谢谢