Home > Archive > ithreads > March 2007 > Free to wrong pool 2227b8 not 3d5a2aa0 at C:/Perl/lib/XSLoader.pm line -1.
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
Free to wrong pool 2227b8 not 3d5a2aa0 at C:/Perl/lib/XSLoader.pm line -1.
|
|
| rob.chuah@gmail.com 2006-07-14, 4:11 am |
| 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;
| |
| Jerry D. Hedden 2006-07-14, 10:03 pm |
| 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;
| |
|
|
|
|
|