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

Réseau C Discussion :

read / recv / recvfrom


Sujet :

Réseau C

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Avril 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut read / recv / recvfrom
    Bonjour,

    Dans un but d'optimisation j'ai besoin de savoir quel est la fonction qui met le moins de temps à s’exécuter : read / recv / recvfrom

    Je ne peux malheureusement pas effectuer des testes maintenant.

    D'avance merci.

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 370
    Points : 23 625
    Points
    23 625
    Par défaut
    Bonjour,

    Personne ne peut répondre à cette question de façon déterministe. Ça va dépendre du système d'exploitation que tu utilises — et de sa version exacte — mais surtout, ces trois fonctions vont passer l'essentiel de leur temps à attendre que la source de donnée leur envoie ce qu'il y a à lire. Si c'est sur le système de fichiers, ça va dépendre du hardware. Si c'est par le réseau, alors l'essentiel des causes de latence vont être extérieures à ta machine : si le réseau n'envoie rien, un recv peut rester bloqué plusieurs dizaines de secondes le temps que quelque chose lui parvienne.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Avril 2012
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Merci de ta réponse Obsidian,

    Pour être plus précis : Je travaille sur la réception de packet UDP / Une première version avait été développée en JAVA sauf que sur les 141 packet émit le programme n'en recevait que 20-30, avec ma solution en C j'en reçois entre 135 et 141, j'utilise la fonction recvfrom.
    Pensez-vous qu'avec un read ou recv je peux atteindre les 141/141 à chaque fois ? car dans cette problématique c'est clairement la fonction recvfrom qui est trop lente

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Mars 2014
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur sécurité

    Informations forums :
    Inscription : Mars 2014
    Messages : 158
    Points : 465
    Points
    465
    Par défaut
    Juste pour info recv ne marche qu'avec un socket connecté (tcp) donc tu peux déjà la virer de ton comparatif.

    Je ne pense pas que tu puisses avoir 141/141 du à la nature d'udp qui ne vérifie pas si le packet à été reçu. Essaies d'envoyer le nombre de paquets à recevoir au début ou fait un check à chaque paquet mais là tu réécris tcp en quelque sorte (tu es obligé d'utilisé UDP et de recevoir tous tes paquets ?).

Discussions similaires

  1. Sur un socket : send et recv ou read et write ?
    Par Médinoc dans le forum Réseau
    Réponses: 35
    Dernier message: 05/11/2009, 15h51
  2. [SOCKET] - Buffer & Read() ou Recv()
    Par jacquesh dans le forum C++
    Réponses: 14
    Dernier message: 27/04/2006, 10h42
  3. [controle] propriété read only
    Par Fizgig dans le forum Composants VCL
    Réponses: 6
    Dernier message: 28/08/2002, 10h30
  4. CheckBox en Read Only
    Par MrJéjé dans le forum C++Builder
    Réponses: 7
    Dernier message: 23/06/2002, 15h00

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