begin process at 2012 02 12 03:44:17
  Trouver un code source :
 
dans
 

9 commentaire(s) de Spiffou sur des sources sur tout CodeS-SourceS

Déposé sur Pointeur de souris

un petit exemple vaut parfois plus qu'un long discours.
Posté le : 10/03/2009 11:54:10

Déposé sur Chat client/serveur avec wsaevent en console

ben en fait la file d'attente, comme son nom l'indique, permet d'autoriser un certain nb de connexion en attente.
en gros sur ce programme, une variable limite le nb d'utilisateur à 2. du coup lorsque 2 personnes sont connectées (le client + le serveur) plus personne ne peut se connecter.

la file d'attente permet à d'autres clients potentiels de se mettre en attente de connexion, cad que le serveur prendra leur connexion dès que le client en cours se sera déconnecté.
si la file d'attente est pleine, alors le client ne peut pas se connecter et sa fonction connect retourne....

par contre il est clair que  les wsaevent sont inutiles et tres compliqués pour ce que j'en fait dans ce prog, mais c'etait juste pour apprendre.

pour ton prog de chat, tu pourra surement bcp l'améliorer si tu utilises des threads ou si tu utilises les mfc.
en effet,  je ne protege pas l'accès à la console, donc si on recoit qqch pdt que l'on ecrit, les données sont perdues. avec les mfc, c'est plus facile de gérer ce genre de pb (grace aux champs de textes).


voila j'espère que j'ai été clair, si y'a un gosu du reseau qui voit que j'ai dit une betise, qu'il n'hésite surtout pas, mais bon ca devrait aller en principe...
Posté le : 09/01/2005 23:44:16

Déposé sur Chat client/serveur avec wsaevent en console

j'ai fait une correction:
comme je peux pas retirer les case du tableau puisqu'il est statique, je décale à la fin les cases event et socket (en mm tps pour pas perdre l'ordre) à '0' (correspondant aux connexions fermées). comme ca si on a plus de 2 connexions, la fonction devrait bien marcher...

void CReseau::CompressArray()
{
SOCKET temps;
WSAEVENT tempe;
int i;

for (i=0; i<EventTotal+1; i++)
{
if ( SocketArray[i] == 0 && EventArray[i] == 0)
{
temps = SocketArray[EventTotal];
SocketArray[EventTotal] = SocketArray[i];
SocketArray[i] = temps;

tempe = EventArray[EventTotal];
EventArray[EventTotal] = EventArray[i];
EventArray[i] = tempe;
}
}
}



sinon aucun commentaire sur le code ou la gestion de threads??
Posté le : 28/12/2004 12:58:23

Déposé sur Chat client/serveur avec wsaevent en console

en effet.
par contre dans ce cas precis ca marche puisque le nb d'utilisateur est limité à 2.
bon je recorrige...

merci.
Posté le : 28/12/2004 11:16:48

Déposé sur Chat client/serveur avec wsaevent en console

voila j'ai corrigé la fonction compressarray, par ctre comme j'ai pas de tableau dynamique (pour event et socket) je fais un tri pour repousser les sockets et event que l'on a mis à 0 lors du FD_CLOSE.
là par contre j'attends vraiment un avis pour valider cette solution...
Posté le : 27/12/2004 16:50:38

Déposé sur Chat client/serveur avec wsaevent en console

oups attention, deja un pb la fonction compressarray est mal utilisé je m'attèle à la correction de cette premiere erreur...

:D
Posté le : 27/12/2004 16:20:45

Déposé sur Connection client serveur avec winsock sans mfc

lol c'est la prochaine étape de mon projet, donc je ne suis pas capable de te répondre pour le moment...

je mettrai une source expliquant tout ca dès que j'aurai moi même compris...
^^
Posté le : 07/11/2004 17:55:57

Déposé sur Connection client serveur avec winsock sans mfc

ah oui pas mal j'y avait pas pensé, et en plus je l'ai jamais vu dans les sources que j'ai consulté....

j vais essayer de faire la modif demain, par ctre comme tu l'as dit c surtout intéressant quand les chaines sont longues, et dans notre cas y'a peu de chance qu'elles soient coupées.
Mais une fois de plus:
autant prendre les bonnes habotudes deès le début...

merci pour la rque
(c fou ce que ca evolue un soft avec les conseils des autres...)
Posté le : 07/11/2004 02:19:52

Déposé sur Connection client serveur avec winsock sans mfc

C'est juste merci pour la rque, je corrige le code.
Il faut quand même dire que étant donné la nature du prog, (qui sert uniquement de tuto) le côté optimisation n'est pas primordial, mais autant prendre les bonnes habotudes deès le début...
Posté le : 06/11/2004 18:34:37

1


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,385 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales