my $extsock = socket connected to some server... my @ready; while(@ready = $select->can_read) { my $socket; for $socket (@ready) { if($socket == $listen) { my $new_socket = $listen->accept; Server->new($new_socket, $select, \@clients); } else { my $client = $clients[$socket->fileno]; if(defined $client) { &{$client->nextsub}(); } else { # unknown data??? } } } }