gpt4 book ai didi

perl - 如何在 Perl 中管理 fork 池?

转载 作者:行者123 更新时间:2023-12-04 13:17:58 24 4
gpt4 key购买 nike

我正在“批量”设置 SSH 到多台服务器。我基本上想一次保持 5 个连接,当一个连接完成后打开另一个连接(遵循一组服务器 IP)。

我想知道我是否应该使用 fork() ?如果是这样,我可以使用什么逻辑来确保我一次养育 5 个 child ?

最佳答案

fork (或线程)是您想要的,但您应该查看 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
}

关于perl - 如何在 Perl 中管理 fork 池?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2510306/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com