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 :

Select et socket


Sujet :

Réseau C

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 31
    Points : 24
    Points
    24
    Par défaut Select et socket
    Bonjour,

    J'essaye d'utiliser select pour empecher que l'ecoute d'un port ne bloque toute ma boucle, malheuresement ca ne marche pas...


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    while(1)        
    {
         FD_ZERO(&ensSck);      //ensemble initialiser a 0
         FD_SET(sck1,&ensSck);  //on ajoute sck1 a l'ensemble
         select(0,&ensSck,&ensSck,&ensSck,0); //ensemble a verifier
     
         if(FD_ISSET(sck1,&ensSck)!=0)
         {
         nbChar=recvfrom(sck1,strInv,STR_SIZE,0,(struct sockaddr*)&netInfo,&temp);
         strInv[nbChar]='\0';                                              
         printf("\ndonnes recu : %s\nde: %d.%d.%d.%d\n",strInv,netInfo.sin_addr.S_un.S_un_b.s_b1,
         netInfo.sin_addr.S_un.S_un_b.s_b2,
         netInfo.sin_addr.S_un.S_un_b.s_b3,
         netInfo.sin_addr.S_un.S_un_b.s_b4);
         nbChar=sendto(sck1,reverse(strInv,nbChar),nbChar,0,(struct sockaddr*)&netInfo,temp);
         }
         else
         {printf("Aucune données recu, je continue...\n");}
    }

  2. #2
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut Re: Select et socket
    Citation Envoyé par zbooon
    J'essaye d'utiliser select pour empecher que l'ecoute d'un port ne bloque toute ma boucle, malheuresement ca ne marche pas...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
         select(0,&ensSck,&ensSck,&ensSck,0);
    Le premier paramètre est faux. Il y a une macro pour ça. Relire la doc.
    Pas de Wi-Fi à la maison : CPL

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 31
    Points : 24
    Points
    24
    Par défaut
    Youpi j'ai resolu mon probléme, il fallait initialiser le 5 eme paramétre avec une structure timeval avec des valeurs NULL et non directement une valeur NULL.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 31
    Points : 24
    Points
    24
    Par défaut
    Le premier paramètre est faux. Il y a une macro pour ça. Relire la doc
    le premier paramétre est obseléte dans le cadre de mon utilisation

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Réseau] select() et accept() sur plusieurs sockets
    Par Higestromm dans le forum C++
    Réponses: 13
    Dernier message: 13/10/2008, 09h18
  2. Socket, recv et select qui ne marche pas
    Par Zapan dans le forum Réseau
    Réponses: 18
    Dernier message: 30/06/2006, 20h19
  3. Pb de socket : select() et send()
    Par olive_le_malin dans le forum Réseau
    Réponses: 16
    Dernier message: 11/06/2006, 11h42
  4. socket & select
    Par keyra dans le forum Réseau
    Réponses: 7
    Dernier message: 29/01/2006, 16h17
  5. [SOCKET] TCP : select devant send();
    Par trois_1 dans le forum Développement
    Réponses: 4
    Dernier message: 02/03/2004, 18h10

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