AnyEvent-ConnPool

 view release on metacpan or  search on metacpan

lib/AnyEvent/ConnPool.pm  view on Meta::CPAN


    unless ($conn_count) {
        croak "Can't initilize empty pool";
    }
    
    for (1 .. $conn_count) {
        $self->add();
    }
    
    if ($self->{check}) {
        my $guard; $guard = AnyEvent->timer (
            after       =>  $self->{check}->{interval},
            interval    =>  $self->{check}->{interval},
            cb          =>  sub {
                my $temp_guard = $guard;
                for (my $i = 0; $i < $self->{count}; $i++) {
                    my $conn = $self->{_payload}->[$i];
                    eval {
                        $self->{check}->{cb}->($conn);
                        1;
                    } or do {

t/04-check.t  view on Meta::CPAN

        cb          =>  sub {
            my $conn = shift;
            $cv->end();
        },
        interval    =>  1,
    },
    init    =>  1,
    size    =>  3,
);

my $timer; $timer = AnyEvent->timer(
    after   =>  10,
    cb      =>  sub {
        BAIL_OUT "Asynchronous check was failed. Bailing out.";
    },
);
$cv->recv();

my $done = 1;
ok ($done, 'Successfully checked');
done_testing();



( run in 1.322 second using v1.01-cache-2.11-cpan-49f99fa48dc )