微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Perl中管理多个子进程?

我有一个Perl程序,需要在后台同时运行大约六个程序,并等待它们全部完成后再继续.同样非常重要的是可以捕获每个的退出状态.

在Perl中有这个常见的习惯用法吗?我目前正在考虑使用线程.

解决方法

不要使用线程.线程很糟糕.正确的方法是分叉多个进程并等待它们完成.如果您使用wait或waitpid,则有问题的进程的退出状态将在$?中提供.

请参阅fork,waitwaitpid的perldoc,以及this SO线程中的示例.

如果您只需管理一个不超过一定大小的子流程池,请查看优秀的Parallel::ForkManager.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐