begin process at 2012 05 30 08:51:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

Réseau & Internet

 > 

Select bloquand en ecriture


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Select bloquand en ecriture

mercredi 7 juin 2006 à 20:25:59 | Select bloquand en ecriture

caesarvanou

Bonjour,
Je travaille sur un projet reseau ou le server ne doit pas bloquer meme s'il envois des donnees a un client qui enfin de compte ne les lis jamais. (C'est un peu idiot mains bon c'est le sujet).
J'utilise select(2) pour monitorer des sockets en lecture et en ecriture. Pour la lecture pas de probleme ca marche impec. Pour l'ecriture, si le client ne lie pas les donnees qu'on lui envois, select me dis que je peu ecrire dessus alors que ca bloque.
Comment bien utilser select pour l'ecriture sur une socket ?
Je travaille sous NetBSD.


JV
jeudi 8 juin 2006 à 11:12:54 | Re : Select bloquand en ecriture

Bel0

Je ne connait pas la condition utilisée par select pour dire si on peut écrire sur un socket ou pas mais le problème que tu décris ressemble à ce scénario (ce ne sont que des suppositions, à vérifier bien entendu !)

(Utilisation de tcp supposée)
Ton serveur envoit des données (que le client ne lit pas) et au fur et à mesure, tu remplis la fenêtre de réception du client. A partir d'une certaine limite (64K ou moins envoyé), l'implémentation TCP du client renverra une taille de window de 0. A ce moment, TCP sur le serveur refusera d'envoyer des données additionelles (qui serait perdue) et ton write sera bloquant.

Je ne vois pas vraiement comment résoudre ce problème si le client ne lit jamais les données. Tu peux toujours agrandir la fenetre de réception du client mais ca ne fait que repousser le problème plus loin.

Tu pourrais nous donner des détails supplémentaires sur ce que tu essayes de faire et pourquoi le client ne lit jamais les données. Ca permettra peut-être de t'aider d'avantages.

Belo
jeudi 8 juin 2006 à 22:04:34 | Re : Select bloquand en ecriture

caesarvanou

C'est bien le protocole TCP que j'utise.
Le probléme viendrai du fait que j'utilse mal la fonction send.
je ferai un essais puis je vous tiens au courrant.

JV


Cette discussion est classée dans : select, ecriture, travaille, envois, bloquand


Répondre à ce message

Sujets en rapport avec ce message

Lecture et ecriture d'une base de données access [ par thino ] SalutJe voudrai avoir un code pour accéder à ma base de données sur access par la methode d'accès DAO. ecriture fichier txt turboC++ [ par idk ] qqun connais une fonction, qui te place le cursor, (dans un fichier),CAD qui renvoie à la ligne suivante exemple char prenom="tom"char nom="bauq" Et d ecriture de champ de bits dans un fichier [ par obasileus ] Salut, est-ce que quelqu'un sait comment ecrire un champ de bits (9 bits) dans un fichier ?merci d'avance@+obasileus mode insertion en ecriture [ par loopy ] Salut, je voudrais savoir comment faire pour ajouter des infos dans un fichier (n'importe ou) en mode insertion. (pour stegano...)merciloopy ecriture en mode insertion [ par loopy ] Salut, je voudrais savoir s'il est possible de rajouter des infos dans un fichier (en mode texte) sans que cela efface les infos precedentes car je do ecriture/lecture Port série [ par bryg ] Salu, Voila je dois exploiter le port série de mon Pc sous win 2000 pour recevoir et envoyer des données comment faire ?Si quelqu'un aurai un program ecriture/lecture Port série VC++ [ par bryg ] Salut,La prog c pas mon fort je recherche desésperement un exemple de programme pour ecrire et lire sur mon port série sous windows 2000 avec VC++.Mer ecriture/lecture Port série VC++ [ par bryg ] Salut,La prog c pas mon fort je recherche desésperement un exemple de programme pour ecrire et lire sur mon port série sous windows 2000 avec VC++.Mer Ecriture du contenu d'une classe dans un fichier [ par bidule ] Bonjour,Je dois ecrire un programme en C++ qui utilise des fichiers.En fait, une fois que j'ai renseigné les variables (num, nom, prenom...) de ma cla help sur lecture/ecriture sur fichier sur c++ [ par overfun ] Bonjour à tous et à toutes, je suis nouveau dans la programmation et voudrait savoir comment écrire dans un fichier seulement sur quelques lignes !!Co


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 0,281 sec (4)

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