【发布时间】:2014-03-31 19:31:46
【问题描述】:
我需要编写一个“命令执行器”来执行以下操作:
- 从数据库中收集命令。
- 产生 $LIMIT 数量的命令(将异步运行)。
- 当 1 个命令完成时,可以启动另一个命令(只要未达到命令 $LIMIT)。
- 命令不应由父进程的子进程生成(我不想运行子进程 + 命令进程)。
- 将结果记录到数据库和日志文件(退出状态、标准输出和标准错误)。
- 用 Perl(或 PHP)编写。
我已经测试了IPC::Run。我只能让它以块的形式运行命令(一次 X)。我必须等待那些 X 完成,然后运行另一个块。不过,我可能做错了什么——它的参考页面很难遵循。这能满足我的需要吗?
我还发现了以下看起来很有希望的内容 (How to write parallel programs in Perl?)。这会做我需要的吗?
【问题讨论】:
标签: perl asynchronous ipc