maison
Top.Mail.Ru Yandeks.Metrika
Forum: "Réseaux";
Archive actuelle: 2002.04.01;
Télécharger: [xml.tar.bz2];

vers le bas

Douille Trouver des branches similaires


anmak   (2001-11-02 16:49) [0]

Comment reprendre une socket morte?

Il y a un morceau de code qui se détache.

FD_ZERO (fds);
FD_SET (S, fds);
case select (S + 1, @ fds, nil, nil, @ one_second) de
SOCKET_ERROR: // erreur détectée
commencer
__close (s);
Writeln ("serveur en panne");
arrêter (1);
fin;

Voici comment à la place
__close (s);
Writeln ("serveur en panne");
arrêter (1);

faire fonctionner le serveur à nouveau sans nezavalivaya uz des connexions arrachées.



Digitman   (2001-11-05 12:50) [1]

Après __close (s) (il est nécessaire de comprendre, CloseSocket (s) s'y trouve-t-il?) On ne peut parler de «réanimation» de la connexion actuelle avec le client - vous avez vous-même rompu la connexion avec le client sans comprendre les véritables causes de SOCKET_ERROR. Nulle part dans ce code ne figure une analyse des raisons de l’erreur survenue (voir WSAGetLastError).
Et en général, il n’est pas clair pourquoi il faut mettre fin au processus serveur s’il s’agissait d’une défaillance non critique de la communication avec l’un des clients (certains autres clients actifs sont à blâmer pour le serveur, qui les "jette" tous en même temps en raison d’une rupture de communication avec certains alors un?)



anmak   (2001-11-05 14:12) [2]

oui vraiment .. pourquoi?
merci beaucoup



KPOT   (2002-01-22 13:59) [3]

Pishu malen "kuju programmku s Socketami, niznaju kak pral" na dejstvovat "v takoj situacii:

Inogda na onReceive Socket.ReceiveLength bol "elle a volé sa voix. Socket.ReceiveBuf. Ja tak ponimaju chto znachit prislali mne bol" elle a eu un coup de s4ital: (((

Kak i kogda et mogu s4itat "ostatok ???

Zaranee blagodaren



Digitman   (2002-01-22 14:22) [4]

s'il y a un reste, l'événement OnRead () se reproduira. Dans son gestionnaire, lisez la prochaine partie attendue, pas plus grande que ReceiveLength. Autrement dit, chaque fois qu'un événement OnRead () se produit, le système vous informe de la disponibilité, dans le tampon de réception, du socket de données réellement reçu du partenaire de connexion à ce moment-là, de la taille des octets ReceiveLength. Vous-même, à ce moment particulier (le moment où vous traitez l'événement OnRead), vous êtes libre de décider de la partie de la taille requise que vous devez lire dans la mémoire tampon (mais pas plus que ReceiveLength octets).



Pages: 1 branche entière

Forum: "Réseaux";
Archive actuelle: 2002.04.01;
Télécharger: [xml.tar.bz2];

à l'étage





Mémoire: 0.56 MB
Heure: 0.018 c
14-315
ao1973
2002-02-20 15:37
2002.04.01
Windows Ce


3-74
userppp
2002-03-10 14:02
2002.04.01
Beaucoup nécessaire! Ne refuse pas!


4-338
Romul
2002-01-29 11:53
2002.04.01
Comment changer la couleur du titre de la fenêtre?


14-303
Nikolay
2002-02-18 16:39
2002.04.01
Je veux me mettre au travail! : +)


3-14
vasilly
2002-03-06 10:26
2002.04.01
Aide par exemple !!! Comment obtenir les paramètres de sortie de la procédure stockée !!!





afrikaans albanais Arabic arménien azerbaïdjanais basque Biélorusse Bulgare catalan Chinois simplifié) Chinois (traditionnel) croate Tchèque Danois Néerlandais Anglais estonien Filipino Finlandais Française
galicien géorgien Allemand Grecque Créole haïtien hébreu Hindi Hongrois Islandais Indonesian irlandais Italienne Japonais Coréen letton lituanien macédonien Malay maltais Norvégienne
persan Polonais Portugais Roumain Russe serbe Slovaque Slovène Espagnol Swahili Suédois Thai turc ukrainien Urdu vietnamien gallois yiddish bengali bosniaque
Cebuano espéranto gujarati Hause hmong Igbo Javanais Kannada Khmer lao latin maori Marathi mongol népalais punjabi somali tamil telugu yoruba
zoulou
Английский Français Allemand Italien Португальский Русский Espagnol