Bonjour à tous,
Je suis entrain de créer un mini-serveur pour apprendre à gérer les socket et les thread.
Pour les tutos que je regarde ce sont ceci :
http://emmanuel-delahaye.developpez.com/reseaux.htm
http://bob.developpez.com/tutapiwin/index.php (chapitre 5)
Voici l'idée de base :
Les sockets on plusieurs fonctions bloquantes (connexion et lecture), donc l'idée de base c'est d'utiliser des threads pour pouvoir gérer les clients qui se connecte.
voici le schéma de base du script :
Une fonction qui attend la connexion de client :
Elle appelle une fonction (bloquante) qui attend la connexion d'un nouveau client, quand il y en a un, un nouveau thread est lancé avec la fonction de gestion du client puis recommence au début.
La fonction de gestion de client :
Elle appelle une fonction (bloquante) qui attend de recevoir une commande du client. Quand elle en reçois une, elle la traite puis recommence au début.
Maintenant mon problème :
Quand on ferme l'application, le tuto des thread indique qu'il faut contacter les thread pour qu'il se ferme par eux meme (pour libérer les alloc dynamique). Le problème c'est que je vous rappelle que les threads sont bloqué par des fonctions bloquante donc je sais pas comment faire...
Est-ce que quelqu'un a une idée???
Merci d'avance
Partager