RE: Free to wrong pool 2227b8 not 3d5a2aa0 at C:/Perl/lib/XSLoader.pm line -1.

[email protected] ("Jerry D. Hedden")
Newsgroups perl.ithreads
Message-ID <20060714183339.fb30e530d17747c2b054d625b8945d88.116681367b.wbe@email.secureserver.net>
Rob 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;
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.