问题标签 [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.
node.js - nodejs:多次运行长命令
我有一个命令需要执行三遍。它生成大量输出到标准输出,大约需要一分钟。三个命令完成后,应该执行第四个(不同的)命令。shell 脚本如下所示:
我正在考虑child_process.exec()
在循环中使用,但它会缓冲标准输出直到它完成(对吗?)。我需要立即向用户提供反馈,因此将标准输出缓冲一秒钟以上并不是一个好主意。所以我需要使用child_process.spawn()
,但异步处理让我有点发疯。我正在考虑将 spawn 调用放在这样的函数中:
我认为这会起作用。但是有更好的方法吗?我在unix,也许是windows系统。
cocos2d-iphone - 像 CCSpawn 这样的 CCSequence 使用来自不同类的函数
我尝试在我的 GameLayer 中使用一些功能。第一个 - 来自另一个类,第二个 - 来自 GameLayer 类,但 CCSequence 像 CCSpawn 一样运行,而不是序列。另外,它们都在 GameLayer 中完美运行。
在游戏层中
在rolypoly类
node.js - 在 Node.js 中生成进程的正确语法是什么?
我试图跟随
http://nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options
在努力做
我试过了
但我收到以下错误
我究竟做错了什么?
shell - 在 MakeFile 中监听后台进程的退出代码
解决 了我需要在 MakeFile 中生成后台进程并考虑它们的退出代码。设想:
- 在后台产生了几个进程。
- MakeFile 继续评估(并且不想在某个循环中检查生成的进程 PID 等等)
- 某些进程以非零退出代码退出
- 使实用程序以非零退出代码退出
自然地,我考虑使用command &
在后台生成一个进程。
问题:如果指定了命令,command &
则 make 进程不会跟踪它的退出代码。
样品 1
样品 2
示例 1 显示 make 实用程序不考虑后台进程的退出代码。
PS 请不要建议存储生成的进程 PID 并在循环中检查它们,并有一些sleep
延迟等等。需要继续评估 MakeFile 并以非零代码自动退出。
解决方案
所以我们可以创建一系列命令来处理后台进程的退出状态。
python - Twisted Python:无法写入正在运行的衍生进程
我的问题是,在产生一个进程之后,子进程正在循环以从其标准输入中获取数据。我想使用 Echo.Process.pipes[0].write(data) 或 Echo.Process.writeToChild(0,data) 向它写入新数据,但两者都不起作用。有人会解释发生了什么吗?或者我该如何解决这个问题?
这是我得到的错误:
谢谢你,
问
java - 如何使用 PTY 在 Scala 中生成进程?
在红宝石中,我有:
如何在 scala/java 中做到这一点?
c - 为什么 windows 生成进程有时会触发错误 STATUS_SXS_ASSEMBLY_NOT_FOUND?
所以,我有一小段 C 代码在 Windows 盒子上运行,上面写着:
我围绕这个写了一些单元测试,我的“命令”是 C:\windows\system32\ipconfig.exe 并且它可以工作,没问题。
试图将其用于应用程序启动器... doo doo。因有用的错误而失败:
好的...四处搜索我发现错误代码是STATUS_SXS_ASSEMBLY_NOT_FOUND,当我尝试启动notepad.exe时也会发生这种情况。缺少程序集?
为什么会这样?
我该如何解决它?
我只是在这里猜测,但我怀疑它与需要在 _spawnve() 中设置 PATH 变量有关,但我不知道它应该是什么。我尝试通过路径,但这似乎没有帮助。运行此代码:
产量:
IE。我传入 argv[0] 和一个路径值;不是其他环境变量或参数。
有任何想法吗?
--
编辑:
因此,似乎发生此错误是因为当我使用 _spawnve() 调用命令时未正确设置 PATH。
这通过调用 _spawnv() 或 _spawnvpe() 变得明显,这两者似乎都可以正常工作。
但是,这并没有真正帮助我,因为我需要在应用程序运行时为其指定一个额外的 PATH 组件。将 PATH=... 传递给 _spawnvpe() 会导致相同的错误,显然 _spawnv 没有被使用,因为它不允许您指定 PATH。
所以真的,这个问题的答案是:因为 PATH 变量是错误的。
...但我仍然不知道它应该是什么。似乎没有我在任何地方都可以找到的可行示例。我将接受任何链接到使用 _spawnve() 或 _spawnvpe() 的编码示例并将 PATH 变量传递给它(并且工作)的答案。
编辑#2:
真的。不,实际上,这不起作用。这是它不起作用的示例。忘记链接到一个有效的例子;只需修改我的示例并发布一个差异,即 1) 通过 PATH 和 2) 运行没有错误。
NB。想看看它的工作吗?更改为 _spawnv() 或将 env 值设为 NULL,它运行得很好。
输出:
expect - 期望命令在 bash 脚本中不起作用
我有一个与期望相关的问题。
当我运行 abc.sh 时,其中包括以下几行
它工作正常
但是当我在我的运行脚本中使用类似的代码时它不起作用
它给出了错误
./script.sh:第 62 行:意外标记附近的语法错误}'
./script.sh: line 62:
}'
我认为这是因为我没有在脚本顶部包含 #!/usr/bin/expect 但如果我使用它并执行我的脚本,它不会做任何事情并在执行后在终端中显示所有代码。那么我们可以同时包含 #!/usr/bin/expect 和 #!/bin/bash 吗?
问候,阿迪亚
c - 如何将 _spawnvpe() 与自定义 PATH 值一起使用?
我在(http://stackoverflow.com/questions/10969488/why-does-windows-spawn-process-sometimes-trigger-error-status-sxs-assembly-not-f)中问了一个相关问题,但我'恐怕它会被问题的复杂性弄糊涂,所以,这是一个非常简单的版本:
这是调用 _spawnvpe 的示例,手动传递 PATH 值。
它不起作用。它出错并且不会运行记事本。
更改为 _spawnv 或不传递 PATH 值使其工作。但是,_putenv 的文档清楚地说明了 env 值的格式是 KEY=VALUE。
我如何使它工作?
请具体说明,并提供以下代码的差异或完整副本,包括修复。
ruby-on-rails - Rails 应用程序:分叉后重新连接主宰 redis?
我正在开发一个使用Juggernaut定期向客户端推送数据的 Rails 应用程序。我使用控制器动作来开始推送;但由于推送通常是一个漫长的过程(10 分钟或更长时间),我使用 spawn 来分叉任务。例如:
问题是当我点击 start_pushing 操作时,我在日志文件中发现了这个错误:
所以我在 spawn_block 中添加了以下内容,希望它能解决问题:
它似乎没有解决它,尽管即使在我将它添加到重置 $redis 之前,该操作一直在间歇性地工作。我在想也许重置 $redis 并没有做任何事情。剑圣仍在访问旧连接。这看起来有可能吗?我如何确保 Juggernaut 使用新的 Redis 连接?
请让我知道有关我所描述内容的任何问题。感谢您的帮助,因为我现在陷入困境。