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 :

gestion de connexion


Sujet :

Réseau C

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2009
    Messages
    96
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 96
    Points : 51
    Points
    51
    Par défaut gestion de connexion
    Bonsoir,

    Dans une application ,en c via les socket, ou le serveur doit attendre les participants du jeu:

    Comment le serveur gère l'attente ?
    1. s'endore durant l'inscription ?!
    2. attend un nombre de joueurs inscris?!
    3. ... d'autre solution ?!



    si on prend la première solution, est ce que :
    1. On va utiliser la méthode "sleep", (comportement parfois indéterminé)?!
    2. On peut utliser le dernier parametre, timeout, de la fonction select.
    3. ... d'autre solution?!


    Merci pour votre point de vue
    E.Bazoga

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 360
    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 360
    Points : 23 599
    Points
    23 599
    Par défaut
    Ton serveur lit un socket exactement de la même façon qu'il lit un flux ou un fichier. Ça veut dire que s'il n'y a rien à lire, le descripteur va être « bloquant », c'est-à-dire que c'est le système lui-même qui va mettre ton processus en sommeil le temps que quelque chose arrive.

    L'ennui, c'est que si quelque chose arrive sur un autre socket dans l'intervalle, tu ne pourras pas le savoir avant que celui que tu essaies de lire soit débloqué. Pour cela, il te faut un appel système dédié qui te permette d'en surveiller plusieurs à la fois. C'est le rôle de select().

    La valeur timeout te permet enfin de te débloquer dans tous les cas au bout d'un temps donné pour éviter de rester bloqué complètement si aucun de tes clients ne t'envoie de données. Tu peux te servir de cela pour refermer les connexions inactives depuis trop longtemps, par exemple.

Discussions similaires

  1. Gestion exception connexion BDD
    Par Aizen64 dans le forum ASP.NET
    Réponses: 3
    Dernier message: 25/02/2008, 22h43
  2. [Multithread] Gestion des connexions
    Par Wookai dans le forum Accès aux données
    Réponses: 2
    Dernier message: 22/11/2007, 23h43
  3. gestion de connexion Internet pour un parc informatique
    Par haltabush dans le forum Développement
    Réponses: 8
    Dernier message: 27/07/2006, 08h01
  4. [Tableaux] gestion des connexions
    Par zahiton dans le forum Langage
    Réponses: 3
    Dernier message: 02/11/2005, 15h37
  5. Réponses: 4
    Dernier message: 04/07/2002, 13h31

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