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 :

MultiThread par default ou non?


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 612
    Par défaut MultiThread par default ou non?
    bonjour, mon application se divise en plusieur projets

    un projet principal est l'interface graphique

    celle-ci s'appuy sur plusieurs librairies


    j'aimerais savoir si, du fait que le programme est former de plusieurs projet et principalement de plusieurs librairie le framework aller dédié un Thread par librairie + 1 pour l'exe

    car mes librairie ont un fonctionnement constant et je ne veut pas qu'elle géne la partie graphique...


    doit je donc crèè un thread et le dédiè a mes librairie? ou est ce fait automatiquement?


    merci

  2. #2
    Membre chevronné Avatar de cmoibal
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2007
    Messages : 361
    Par défaut
    Normalement, chaque projet créé est une bibliothèque a part, donc, et dans le standard, un bibliothèque ne contient que des routines ou des fonction a utiliser dans un programme principale.... et c'est exactement ton cas.

    donc, l'utilisation d'une fonction disponible dans une bibliothèque externe du projet sera exécuter avec le thread appelant, ainsi, si tu veut qu'une fonction soit exécuter séparément du thread main, il tu faut un autre thread qui fera l'appel.

    Sauf dans le cas ou la fonction a utiliser créer elle même un thread pour s'exécuter .

  3. #3
    Membre averti Avatar de Yodabis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 55
    Par défaut
    Faut éventuellement voir le fonctionnement des librairies, mais normalement tout est sur le même.
    Vaut mieux lancer un Thread.

    oups grillé ...

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 612
    Par défaut
    il y a pour l'instant 2 librairies qui necessiterais un Thread personnel


    la premier permet de liè le programme a une source de donnèe distante, une fois que le programme fournis certain parametre a la librairie elle lance un Timer pour lir les informations distante toute les 2s. En prenant en compte que toute les 2s il yauras plusieurs element a lire c'est limite si je ne mettrais pas un Thread par element....


    la 2ème est une grosse collection de map(objet avec id/titre/description/ List<PositionInterdite> / Image) en sachant que le plus gros du travail seras de charger et decrypter toutes les carte au demarage. mais pour plus de fluiditè je pense lui dédié egalement une Thread


    mes librairie n'aillant rien de "special" je ne pense pas qu'elle soit multi-threadè d'origine. une fois celle-ci operationnel il fodras que je mis emplois

    PS: rassurer moi ya un petit outils sous VS qui nous montre les Thread lancè et qui fait quoi?? pour etre sur qu'il remplice bien leurs taches

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    547
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 547
    Par défaut
    Salut,

    quelques remarques :

    - tu dis utiliser un timer dans une de tes libs. Un timer utilise implicitement des threads pour son callback, donc attention à comment sortent ses callbacks (genre ton ui qui s'abonnerait à un eventuel event de cette library, ou il faudra gerer l'invocation).

    - Un conseil d'ordre general : Si une operation (decryptage, chargement, ou que sais-je) prend plus d'une seconde (chiffre totalement arbitraire, comprendre c'est long, ou ca peut le devenir (un chargement peut devenir plus long avec le temps et les données s'ajoutant)), il faut utiliser un thread. Rien de plus horipilant qu'un logiciel qui freeze trop longtemps.

    - Pour les threads sous VS (express exclus), oui il y a une fenetre des threads courants

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 612
    Par défaut
    pour le Timer rien de très complexe

    ma librairie lis des donnèes et remplie des classe avec celle-ci

    toute les 2s elle reli les donnè pour fair la mise a jour

  7. #7
    Membre émérite
    Inscrit en
    Octobre 2006
    Messages
    587
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Octobre 2006
    Messages : 587
    Par défaut
    Citation Envoyé par SirJulio Voir le message
    - Pour les threads sous VS (express exclus), oui il y a une fenetre des threads courants
    Très utile d'ailleurs pour le débogage de plusieurs threads.

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/01/2009, 13h23
  2. [VB6] Détecter le navigateur par default
    Par GeDeon35 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 13/12/2004, 16h52
  3. Comment démarrer WIN XP par défaut et non Redhat ?
    Par callo dans le forum Administration système
    Réponses: 3
    Dernier message: 20/10/2004, 18h00
  4. [CR] Grouper des minutes par cinq et non une par une.
    Par Etienne51 dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 14/09/2004, 13h45
  5. [XSLT] Variable par défaut ou non dans un 'IF'
    Par Johnbob dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 25/01/2004, 17h00

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