The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

NAME

AnyEvent::Worker::Pool - Easily create a pool of workers and use'em like a single worker

SYNOPSIS

use AnyEvent 5;
# Create a pool of 2 workers
my $workers = AnyEvent::Worker::Pool->new( 2, @common_worker_init_args );
# Will be run instantly (left 1 idle worker)
$workers->do( @common_worker_do_args );
# Will be run instantly (left 0 idle workers)
$workers->do( @common_worker_do_args );
# Will be run after one of busy worker will get free
$workers->do( @common_worker_do_args );
$workers->take_worker(sub {
my $worker = shift;
$worker->do(@args, sub {
$workers>ret_worker($worker);
});
});

AUTHOR

Mons Anderson, <mons@cpan.org>

COPYRIGHT & LICENSE

Copyright 2009 Mons Anderson.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.