use strict; use warnings; use AnyEvent; use AnyEvent::HTTPD; use Time::HiRes qw(gettimeofday); use Digest::MD5 qw(md5); my $httpd = AnyEvent::HTTPD->new(port=>9090); my $count = 0; my $foo = 'bar'; # Handle other events $httpd->reg_cb( '/count' => sub { my ($h,$r)= @_; $r->respond({content=>['text/plain',"$count: ".(unpack 'q',$foo)]}); $h->stop_request; }); # CPU crunching for 100mS when idle... my $idle = AnyEvent->idle(cb => sub { my $now = gettimeofday; while(gettimeofday < ($now + 0.1)) { $foo = md5($foo); } $count+=1; }); my $cv = AnyEvent->condvar; $cv->recv;