note
brainiac
Remember how I said I assumed the forking code was fine? Well, I grabbed your latest code posting, and to my surprise, it wouldn't run! After some more debugging (looks like I'm reading more code than I'm writing lately) I think I've found a contention issue (not really sure)...anywho:
<code>
else
{
#i'm the parent!
warn "(Parent) I'm the parent\n";
#who connected?
warn "(Parent) Connecton recieved ... ",$connection>peerhost,"\n";
#close the connection, the parent has already passed
# it off to a child.
warn "(Parent) Closing connection\n";
sleep 3;
$connection->close();
}
</code>
Those extra <code>warn</code> statements lead me to believe that the parent was closing the <code>$connection</code> before the child got to call <code>play_songs</code> hence the <code>sleep</code> call. I chose "3" randomly, but it works fine now, and the sleep doesn't affect any of the logic or flow.
Brainiac
8650
61154