Comment puis-je accepter de plusieurs clients à un serveur TCP?

J'ai actuellement un serveur TCP mis en place qui peut accepter une connexion à partir d'un client et l'écho de tout ce que le client entrées. Comment puis-je faire plusieurs clients se connectent au serveur et d'avoir leurs commentaires envoyés à tous les clients?

Il semble que je devrais fourche, mais je ne suis pas entièrement sûr de savoir comment...

Sur le serveur, dois-je placer une boucle infinie à partir de l'accepter (ou écouter?) qui fourche quand il ya une nouvelle connexion? Ensuite, sur le processus de l'enfant que j'aurais à proximité de la prise de la précédente et le connecte à nouveau, mais encore une fois je ne suis pas entièrement sûr.

Que serait le pseudo-code pour le juste de la fourche et de la prise de manipulation? Ma conjecture:

while(1) //before connection or accept?

pid = fork()

if(pid==0)
  //open socket from client
  //run the rest of the code 
  //end process when client disconnects
else
  //close socket from client

OriginalL'auteur countofmontecristo | 2014-12-15