| Archer documentation | Contained in the Archer distribution. |
my $manager = Archer::Parallel::ForkManager->new;
$manager->run(
{
num => 30,
callback => sub {
my $elem = shift;
$self->run_hook('process', {elem => $elem});
}
}
);
| Archer documentation | Contained in the Archer distribution. |
package Archer::Parallel::ForkManager; use strict; use warnings; use Parallel::ForkManager; sub new { bless {}, shift } sub run { my ($self, $args) = @_; my $pm = Parallel::ForkManager->new( $args->{num} ); for my $elem ( @{ $args->{elems} } ) { $pm->start and next; $args->{callback}->( $elem ); $pm->finish; } $pm->wait_all_children; } 1; __END__