AnyEvent-ConnPool
view release on metacpan or search on metacpan
lib/AnyEvent/ConnPool.pm view on Meta::CPAN
162163164165166167168169170171172173174175176177178179180181182unless
(
$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
181920212223242526272829303132333435363738
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 )