如何在Perl中管理fork池?
发布时间:2020-12-15 21:59:18 所属栏目:大数据 来源:网络整理
导读:我正在设置一些东西,以“批量”方式将SSH输出到多个服务器.我基本上想要一次维护5个连接,当一个连接打开另一个连接时(遵循一系列服务器IP). 我想知道这样的事情我应该使用fork()吗?如果是这样,我可以使用什么逻辑来确保我一次维持5个孩子? 解决方法 分叉(
我正在设置一些东西,以“批量”方式将SSH输出到多个服务器.我基本上想要一次维护5个连接,当一个连接打开另一个连接时(遵循一系列服务器IP).
我想知道这样的事情我应该使用fork()吗?如果是这样,我可以使用什么逻辑来确保我一次维持5个孩子? 解决方法
分叉(或穿线)是你想要的,但你应该看一下
CPAN的模块,这些模块将提供你需要的大部分内容,以防止你重新发明轮子并经历你需要做的学习的痛苦.
例如,Parallel::ForkManager看起来就像你想要的那样. use Parallel::ForkManager; $pm = new Parallel::ForkManager($MAX_PROCESSES); foreach $data (@all_data) { # Forks and returns the pid for the child: my $pid = $pm->start and next; ... do some work with $data in the child process ... $pm->finish; # Terminates the child process } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |