4
当使用Parallel::ForkManager时,有时会出现此警告,但只能在Windows中使用,而不能在基于Unix的系统上使用。这是什么意思,我应该担心吗?使用Parallel :: ForkManager的警告,但只在Windows中使用
子进程'-17108'消失。 以外的
waitpid
调用Parallel :: ForkManager可能已经收获了它。
下面是从docs示例代码,我的代码是基于:
use LWP::Simple;
use Parallel::ForkManager;
my @links=(
["http://www.foo.bar/rulez.data","rulez_data.txt"],
["http://new.host/more_data.doc","more_data.doc"],
);
# Max 30 processes for parallel download
my $pm = Parallel::ForkManager->new(30);
LINKS:
foreach my $linkarray (@links) {
$pm->start and next LINKS; # do the fork
my ($link, $fn) = @$linkarray;
warn "Cannot get $fn from $link"
if getstore($link, $fn) != RC_OK;
$pm->finish; # do the exit in the child process
}
$pm->wait_all_children;
这意味着该进程结束,并且其他进程收到它在Parallel :: ForkManager之前调用waitpid。鉴于它只是有时发生,并且在Windows上可能表明某处存在缺陷,我想。 – jira
@jira没有其他可以获得它的进程。无论如何,“收获”意味着什么? – CJ7
我认为最好将它报告为Parallel :: ForkManager中的一个可能的错误。 – jira