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 :

threads et variables globales


Sujet :

C

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 14
    Points : 11
    Points
    11
    Par défaut threads et variables globales
    bonjour

    j'aurais une question sur l'implémentation en multi-threading

    je dispose d'un code qui appelle de nombreuses fois une même fonction sur un domaine,

    pour accélerer le programme sur les machines multi-core
    je voudrais diviser le domaine en plusieurs parties et confier l'appel de la fonction sur chaque sous-domaine à un thread en particuliers

    la fonction est écrite en C, mais appelle des fonctions en fortran qui font usage de variables en COMMON
    ces variables n'existent pas au-dessus de la fonction C mais elles existent en tant que variables globales dans toute la sous-structure écrite en fortran.

    mon inquiétude est que les thread ne créent pas de copie mémoire pour les variables globales, autrement dit si je lance plusieurs threads, ceux-ci vont tenter d'écrire en même temps dans la même zone mémoire pour chaque variable globale ???

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 382
    Points : 41 590
    Points
    41 590
    Par défaut
    En effet, à moins que tu n'implémentes des mécanismes de synchronisation.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 14
    Points : 11
    Points
    11
    Par défaut
    merci pour cette confirmation,

    je peux alors forker, i.e. créer plusieurs processus

    mais il faut faire ensuite de la com inter processus

    est-ce facile de communiquer des valeurs réelles et entières entre processus (sans faire de lecture écriture sur un disque) ?

  4. #4
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par deb75 Voir le message
    mon inquiétude est que les thread ne créent pas de copie mémoire pour les variables globales, autrement dit si je lance plusieurs threads, ceux-ci vont tenter d'écrire en même temps dans la même zone mémoire pour chaque variable globale ???
    Bin si tu fait en sorte que plusieurs threads accèdent à la même variable globale, oui. Il te faut mettre en place un verrour (mutex).

Discussions similaires

  1. Thread et variables globales
    Par navugo dans le forum Général Python
    Réponses: 9
    Dernier message: 26/10/2010, 09h13
  2. [MT] thread et variable globale
    Par r0d dans le forum Threads & Processus
    Réponses: 5
    Dernier message: 15/08/2007, 03h18
  3. Réponses: 4
    Dernier message: 04/02/2007, 20h39
  4. Variable globale / Propriété des threads
    Par rgarnier dans le forum XMLRAD
    Réponses: 4
    Dernier message: 03/10/2003, 11h49
  5. question sur les variables globales et les thread posix
    Par souris_sonic dans le forum POSIX
    Réponses: 5
    Dernier message: 13/06/2003, 14h59

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