AnyEvent-Tools
view release on metacpan or search on metacpan
t/06_pool.t view on Meta::CPAN
use_ok 'AnyEvent::Tools', 'pool';
}
{
my $cv = condvar AnyEvent;
my $pool = pool qw( a b );
my $order = 0;
my @res;
my $busy = 0;
my $cnt = 1;
my $idle;
$idle = AE::idle sub {
$pool->get(sub {
my ($guard, $object) = @_;
$busy++;
push @res, { b => $busy, t => time };
my $timer;
$timer = AE::timer 0.1, 0 => sub {
$busy--;
undef $timer;
undef $guard;
if (@res >= 40) {
undef $idle;
$cv->send;
}
};
});
( run in 0.347 second using v1.01-cache-2.11-cpan-87723dcf8b7 )