AnyEvent-ConnPool

 view release on metacpan or  search on metacpan

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

162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
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

18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
        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.208 second using v1.01-cache-2.11-cpan-87723dcf8b7 )