IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

Recherche des infos sur FD_WRITE (sockets asyncrones)


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    227
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 227
    Par d�faut Recherche des infos sur FD_WRITE (sockets asyncrones)
    Salut,

    Je cherche des infos sur l'�v�nement FD_WRITE concernant les sockets asyncrones, d'apr�s MSDN ce message est envoy� losrque la fonction send() a termin� son envoi.

    Je voudrait plus d'info sur cet �v�nement.
    En fait j'utilise plusieur fois send() et je voudrait savoir si un de ces send() a fini son envoi, mais comment savoir de quel send() provient FD_WRITE ?
    Peut �tre que si j'envoi une chaine d'une taille diff�rente avec le send() en question je pourrait le diff�rencier des autres � condition que FD_WRITE renvoye la taille des donn�es envoy�es par le send() correspondant.

    J'ai trouv� peu d'information sur MSDN, j'ai cherch� aussi sur GOOGLE mais j'ai rien trouv� de tr�s concluant.

    Si vous avez des infos sur �a n'esitez pas

    PS: j'esp�re avoir �t� assez clair.

  2. #2
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    FD_WRITE n'est pas envoy� apr�s un send(), il est envoy� d�s qu'il y a � nouveau de la place dans le buffer d'�mission (apr�s qu'un send() ait �chou� parce qu'il n'y en avait plus).

    Je n'en sais pas beaucoup plus, j'ai plus ou moins abandonn� les sockets asynchrones quand il s'agit d'envoyer des donn�es de grande taille: Un gros envoi bloquant est plus simple.
    Pour moi, les sockets asynchrones sont surtout bons pour des envois espac�s de petites donn�es (un t'chat, notamment)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    227
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 227
    Par d�faut
    Citation Envoy� par M�dinoc
    FD_WRITE n'est pas envoy� apr�s un send(), il est envoy� d�s qu'il y a � nouveau de la place dans le buffer d'�mission (apr�s qu'un send() ait �chou� parce qu'il n'y en avait plus).
    J'avais mal compris, j'ai lu peut �tre un peu vite. Ca va un m'arranger pluyt�t pas mal tout �a 8)

    A ce propos combien il fait le buffer d'�mission , je sais que sa taille est variable et que l'on peut la trouver avec une fonction, mais je voudrait juste avoir un ordre d'id�e (c'est plut�t 100Ko ou 10Mo, ca doit quant m�me pas varier beaucoup d'une machine � l'autre)

    Et sinon a la reception de FD_WRITE il est possible de savoir combien de place � �t� lib�r� dans le buffer d'�mission ? ou plut�t combien il y a de place de libre dans celui-ci ?

  4. #4
    Membre confirm�
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    227
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 227
    Par d�faut
    Y a t'il des moyen de g�rer le buffer d'�mission du socket.
    Je voudrait au moins r�cup�rer la taille disponible dans le tampon d'�mission.

    Peut t'on faire passer un message avec une forte priorit� d'�mission afin qu'il passe avant tout les autres sans faire la queue?

  5. #5
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    1�) getsockopt() pour r�cup�rer les tailles de buffer
    2�) Je crois que les donn�es OOB (out-of-band) servent � �a, mais je n'en suis pas s�r.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre confirm�
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    227
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 227
    Par d�faut
    Apparement OOB ne faiut pas passer les messages en priorit�, enfin j'en suis pas persuad� j'ai seulement essay� avec l'IP 127.0.0.1 ....

    : Je voudrait aussi savoir si "send()" �choue si le tampon de reception du destinataire est plein.

    Merci

    PS: Si vous avez de la doc. assez compl�te sur les sockets n'esitez pas � me la passer.

Discussions similaires

  1. recherche des info sur cr�ation de site
    Par jenny30 dans le forum Droit
    R�ponses: 1
    Dernier message: 03/06/2009, 14h32
  2. rechercher des infos sur une page web
    Par Guenael2 dans le forum Langage
    R�ponses: 6
    Dernier message: 08/12/2007, 18h32
  3. Obtenir des infos sur une page web en ligne
    Par Logan_Cale dans le forum Web & r�seau
    R�ponses: 1
    Dernier message: 20/08/2005, 15h36
  4. R�ponses: 3
    Dernier message: 15/03/2004, 00h55
  5. R�cup�rer des infos sur un AVI
    Par FredericB dans le forum C++Builder
    R�ponses: 2
    Dernier message: 08/12/2003, 14h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo