Thanks to everybody that replied. This seems to be working as I want. I will read more about the EINTR signal. When the last child dies the error rasised by $socket->accept is "No child processes". I will look at Net::Server. It looks like what I need, but I am glad I took this approach to start. Again, my many thanks.