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 :

Classes et multi-thread (ThreadPool)


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Octobre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Octobre 2021
    Messages : 4
    Par défaut Classes et multi-thread (ThreadPool)
    Bonjour à tous.

    Je désire écrire un service Windows qui contient un serveur http local dans ce service (HttpListener).
    Ce serveur local utilise ThreadPool pour l'écoute.

    Dans ma fonction de réception des messages (ClientCallBack(HttpListenerRequest request) je dois faire
    appel à des fonctions qui sont contenues dans des classes différentes.

    - Classe ActiveDirectory
    - Classe SQlite
    - ...

    Je me pose quelques questions :

    - Est-ce que chaque client qui effectue une requête sur mon serveur dans ce service est dans un Thread différents ?
    - Est-ce mieux d'instancier mes classes au démarrage du service ou de le faire à chaque requête du client via new maclasse();



    Merci pour vos éclairage

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    la réponse semble être ici : HttpListener Classe (System.Net) | Microsoft Docs
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Expert confirmé

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Charente Maritime (Poitou Charente)

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

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 761
    Billets dans le blog
    21
    Par défaut
    Citation Envoyé par snogoons Voir le message
    - Est-ce que chaque client qui effectue une requête sur mon serveur dans ce service est dans un Thread différents ?
    Oui (sauf à gérer explicitement l'arrivée de chaque requête via BeginGetContext, mais je n'ai jamais vu le cas jusqu'à présent !)

    Citation Envoyé par snogoons Voir le message
    - Est-ce mieux d'instancier mes classes au démarrage du service ou de le faire à chaque requête du client via new maclasse();
    Cela va dépendre de vos services.

    Si l'instanciation est lourde, il vaut mieux le faire au démarrage du service.

    Si les services ne sont pas threadsafe, il vaut mieux que chaque requête ait sa propre instance du service.

    Il est également possible de combiner un peu les deux approches en faisant un pool pour les services, pool qui instanciera automatiquement une nouvelle instance si besoin, et qui récupérera les instances qui ne sont plus utilisées après le traitement de chaque requête.

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Octobre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Octobre 2021
    Messages : 4
    Par défaut
    Bonjour à vous deux.

    Merci pour ces précisions, c'est plus claire maintenant

    Excellente journée !

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

Discussions similaires

  1. Tri multi-threadé
    Par Tifauv' dans le forum C
    Réponses: 8
    Dernier message: 28/06/2007, 09h00
  2. Réponses: 2
    Dernier message: 15/05/2004, 18h33
  3. Réponses: 16
    Dernier message: 30/01/2004, 11h05
  4. [VB6][active x] faire du multi-thread avec vb
    Par pecheur dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 20/05/2003, 12h01
  5. [Kylix] exception qtinft.dll et multi-threading
    Par leclaudio25 dans le forum EDI
    Réponses: 3
    Dernier message: 27/03/2003, 18h09

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