Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1266 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Appel à accept() bloqué alors que le fd a été retourné par select()

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Appel à accept() bloqué alors que le fd a été retourné par select()

n°1738241
Kersoft
Posté le 28-05-2008 à 11:46:45  profilanswer
 

Bonjour,  
 
Un serveur tout simple à bloquer lors qu'un client inconnue c'est connecté.
Lors ce que j'ai tué le processus (kill -USR1), j'étais dans la function accept() qui est revenue avec l'erreur "Interrupted system call" ).
 
Le serveur est constitue d'une boucle infine after un appel à 'select()' suivi d'un appel à accept si le port de connection a été solicité. De plus le processus ne prenait pas de CPU quand je l'ai tué.
 

Code :
  1. for(;;)
  2. {
  3.   bcopy(&Fds, readfds, sizeof(Fds));
  4.   select(FD_SETSIZE, &readfs, &writefds, &exceptfds, &timeout);
  5.   if (FD_ISSET(Connection_socket, &readfds))
  6.    {
  7.      communication_socket = accept(Connection_socket);
  8.      if (communication_socket == -1)
  9.        {
  10.           printf("accept failed (%s)\n", sys_errlist[errno]);
  11.           print_stack();
  12.           exit(1);
  13.        }
  14.      .....
  15.    }
  16. }


Quelqu'un aurait une idée sur les causes possibles, et du meilleur moyen d'y reagir?
 
Merci d'avance  
 

mood
Publicité
Posté le 28-05-2008 à 11:46:45  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Appel à accept() bloqué alors que le fd a été retourné par select()

 

Sujets relatifs
Un usage de boost::function dans un appel à boost::threadProblème avec sélect
Script Ajax Show avec select[FLASH7]Appel de fonctions de scripts externes
SELECT SYNCHSORT UNIXBloqué :Comment définit on que le pt d'entre est MAIN ou autre chose ?
Onchang/select/menu[RESOLU]thxProbleme récupération valeur d'un select[Résolu]
Urgent ! Appel d'une page html en perlAppel périodique d'une fonction??
Plus de sujets relatifs à : Appel à accept() bloqué alors que le fd a été retourné par select()


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR