use AnyEvent::Util qw(fh_nonblocking); ...; fh_nonblocking $srv_sock, 1; my $w = AE::io $srv_sock, 0, sub { while(accept my $cli_sock, $srv_sock) { # initialize watchers for client socket } };