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

C# Discussion :

c# et client irc


Sujet :

C#

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 20
    Points : 15
    Points
    15
    Par défaut c# et client irc
    bonjour,
    je tente de créer un client irc et je voulais savoir quelque chose lorsque l'on utilise les socket asynchrone il y a un thread caché derrière du coup pour un client irc il risque d'y avoir plusieurs socket donc chaque socket aura son thread ? est il mieux d'utiliser cette technique à savoir les socket asynchrone ou de se créer un thread dédié a receive sur toutes les socket créer normalement donc sans utiliser le système asynchrone ?

  2. #2
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Que tu utilises les socket en asynchrone ou bien en synchrone avec une gestion de thread à côté cela revient au même dans le principe.

    Après, la grosse différence c'est que les appels asynchrones se font sur le pool de threads (cf. classe ThreadPool) et ce pool à une limite. 25 threads (la valeur peut être modifiée, par défaut c'est 25) peuvent s'exécuter en même temps dans le pool. Si on ajoute d'autres threads, ils seront mis en attente le temps qu'une place se libère. Mal utilisé cela peut poser des problèmes de performances donc

    Généralement on se sert du pool de threads pour des opérations de courte durée (évite ainsi la famine puisqu'il y aura normalement toujours de la place disponible dans le pool) et c'est le but du pool de threads à la base il me semble. Pour un client IRC on est pas trop dans ce cas de figure, je pense donc qu'il serait plus propre de gérer les threads soit même à ce moment. Néanmoins rien n'empêche d'utiliser les appels asynchrones.

    Maintenant j'espère que quelqu'un ayant de l'expérience dans ce domaine passera par là car je ne me considère pas comme un spécialiste des threads et une réponse plus étayée m'intéresserais

  3. #3
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    salut

    le mieux est d'avoir un thread par socket

    Après, il y a peu de risque que cela te plombe tes performances dans la mesure ou l'activité sur les sockets et donc, de chaque thread sera réduite.

    Après, il faut savoir que plus tu as de thread, plus l'OS doit basculer entre chaque thread.

    L'interet des threads est de dissocier des traitements qui peuvent l'etre et qui ne requiert pas forcément d'être exécuté dans un temps défini. Typiquement, l'écoute d'un port, d'une socket correspond bien à ce cas de figure puisque l'activité de chaque thread sera , à mon avis, faible !!!

    The Monz, Toulouse

Discussions similaires

  1. Quel client IRC utilisez vous ?
    Par mavina dans le forum IRC / mIRC
    Réponses: 61
    Dernier message: 12/08/2010, 10h25
  2. Projet de client IRC
    Par Leobaillard dans le forum Web & réseau
    Réponses: 13
    Dernier message: 06/03/2006, 18h13
  3. Client Irc avec IdIRC1 (indy 9)
    Par Coussati dans le forum Web & réseau
    Réponses: 1
    Dernier message: 21/11/2005, 23h29
  4. Aide pour un client irc
    Par Coussati dans le forum Web & réseau
    Réponses: 1
    Dernier message: 01/11/2005, 02h35
  5. Réponses: 2
    Dernier message: 31/08/2002, 21h37

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