my $ae = AnyEvent->timer ( after => 5, interval => 60, cb => \&logStats, ); my $rf = Net::RabbitFoot->new()->load_xml_spec()->connect( host => 'localhost', port => 5672, user => 'guest', pass => 'guest', vhost => '/', timeout => 1, ); ... open channel and define on_consume handler ... AnyEvent->condvar->recv;