CANEVA DE SERVEUR MULTITHREAD UTILISANT CSOCKET

katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 - 8 juil. 2006 à 17:56
djmoa Messages postés 39 Date d'inscription mercredi 6 octobre 2004 Statut Membre Dernière intervention 27 mai 2009 - 1 avril 2008 à 13:41
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/38451-caneva-de-serveur-multithread-utilisant-csocket

djmoa Messages postés 39 Date d'inscription mercredi 6 octobre 2004 Statut Membre Dernière intervention 27 mai 2009
1 avril 2008 à 13:41
j'avais oublié de signaler, mais depuis mi novembre 2007 le mutex qui manquait est rajouté.
cs_bouba75 Messages postés 2 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 10 avril 2007
10 avril 2007 à 10:00
Merci je vais regarder ça!!!
djmoa Messages postés 39 Date d'inscription mercredi 6 octobre 2004 Statut Membre Dernière intervention 27 mai 2009
6 avril 2007 à 17:34
Salut. Désolé, mais pour le C#, c'est as encore mon outil de travail ;)
Au fait, il y a une petite erreure dans le source... il fonctionne bien mais ... il manque un mutex:

le rajouter un variable globale,
le prendre apres le "detach", et le rendre apres le attach...
Je modifierai la source un de ces 4 ...

pour le C#, tu pourrais pas mettre ce code dans une DLL et l'implémenter depuis ton prog ?
cs_bouba75 Messages postés 2 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 10 avril 2007
5 avril 2007 à 16:47
Salut j'ai le même probléme que t'avais,
moi je développe dans un environnement C# et je ne peux pas déclarer de pointeur
sur un socket car il est de type managé( aprés compilation).
Je comprends bien ta méthode et je cherche un équivalent en C#
Merci
djmoa Messages postés 39 Date d'inscription mercredi 6 octobre 2004 Statut Membre Dernière intervention 27 mai 2009
10 juil. 2006 à 10:04
Le programme crée 1 thread par client. donc, normalement il ne noit pas y avoir de limite au noveau du nombre de thread instanciés. Je suis bien au courant que le numéro d'un port n'oblige en rien sur le type de programme qui ecoute derriere;..
Cet exemple fonctionne pour tout type de serveur, tu peut t'en servire de base pour FTP, messagerie, HTTP ... enfin tu sais deja ca !
l exemple avec le serveur web est celui le plus facil a tester car tout le monde a un navigateur...

pour le testm faites char var[]="HTTP/1.1 200 OK\r\n\r\n<html>coucou</html>";
Wsocket->write(var,sizeof(var));
katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 3
8 juil. 2006 à 17:56
Salut :)
Est-ce que la limite est de 64 clients par thread?
Tout ce qui est sur le port 80 n'est pas forcément 'web'.
Rejoignez-nous