Code Comments
Programming Forum and web based access to our favorite programming groups.While trying to use the sample code from the CPAN on
Parallel::ForkManager, I get an error "Free to wrong pool 2227b8 not
3d5a2aa0 at C:/Perl/lib/XSLoader.pm line -1."
I have been poking around the internet looking for possible solution.
But to no avail. Not sure if someone already had this fixed ?
I am running Perl v5.8.8 built for MSWin32-x86-multi-thread. Platform
is WinXP SP2.
Below are the codes
use LWP::Simple;
use Parallel::ForkManager;
..
@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 = new Parallel::ForkManager(30);
foreach my $linkarray (@links) {
$pm->start and next; # 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;
Post Follow-up to this messageRob Chuah wrote:
> While trying to use the sample code from the CPAN on
> Parallel::ForkManager, I get an error "Free to wrong pool 2227b8 not
> 3d5a2aa0 at C:/Perl/lib/XSLoader.pm line -1."
>
> I am running Perl v5.8.8 built for MSWin32-x86-multi-thread. Platform
> is WinXP SP2.
>
> Below are the codes
>
> use LWP::Simple;
> use Parallel::ForkManager;
>
> ...
>
> @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 = new Parallel::ForkManager(30);
>
> foreach my $linkarray (@links) {
> $pm->start and next; # 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;
I was not able to reproduce your error. I tried the following code with
ActivePerl 5.8.8 on WinXP SP2, and it ran without any errors or
warnings:
use LWP::Simple;
use Parallel::ForkManager;
@links=(
["http://feeds.feedburner.com/Evolution101.xml","evo.xml"],
["http://feeds.wnyc.org/radiolab.xml","rl.xml"],
);
my $pm = new Parallel::ForkManager(30);
foreach my $linkarray (@links) {
$pm->start and next;
my ($link, $fn) = @$linkarray;
if (getstore($link,$fn) != RC_OK) {
warn "Cannot get $fn from $link"
}
$pm->finish;
}
$pm->wait_all_children;
Post Follow-up to this messageAwesome movie! And it's free! http://pissing-girls.info/videos/me...hp?video=218571
Post Follow-up to this message
Show a Printable Version
Email This Page to Someone!
Receive updates to this thread
Powered by vBulletin
Copyright 2000-2006 Jelsoft Enterprises Limited.