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 :

[application multi-process] stocker les instances


Sujet :

C++

  1. #1
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Points : 661
    Points
    661
    Par défaut [application multi-process] stocker les instances
    salut,

    je dois faire une application multi processus avec un procesus maitre et des processus escalves.

    Je dois stocker les données minimum pour communiquer entre maitre et escalves. Quelles sont elles ? Comment faire pour stocker les données relatives aux processus escalves dans le proc maitre ?

    PS : les processus esclaves sont plusieurs instances du meme .exe
    Pour les details, cherche tout seul !

  2. #2
    Membre éprouvé Avatar de Caine
    Inscrit en
    Mai 2004
    Messages
    1 028
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 028
    Points : 1 122
    Points
    1 122
    Par défaut
    Bonjour,

    C'est le maître qui créait les esclaves? Donc il peut stocker leurs handle, normalement ça suffit et surtout c'est le plus sûr.

    Avec le Handle le maître et les esclaves pourront communiquer: Par Event, par messages.
    Si les esclaves sont des processus: Il est plus pratique de créer un sémaphore entre eux, une zone mémoire partagée. O fait ceci avec CreateFileMapping. Il y a un tuto Delphi très bien fait, ça te montrera le principe.

    Si les esclaves sont des threads, ils peuvent partager des variables globales du maître. Un truc sympa d'ailleurs est la possibilité de spécialiser des données par thread; Pour ça regarde du côté de TLSData.

    Heu, précision, c'est valable sous Windows.

    Voilà. Bon WE

  3. #3
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    e dois stocker les données minimum pour communiquer entre maitre et escalves. Quelles sont elles ?
    Ca a un sens particulier "données minimum" parce qu'auquel cas je ne vois pas comment on pourrait savoir quelles sont tes données
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  4. #4
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Points : 661
    Points
    661
    Par défaut
    Citation Envoyé par Caine
    Bonjour,

    C'est le maître qui créait les esclaves? Donc il peut stocker leurs handle, normalement ça suffit et surtout c'est le plus sûr.
    c est ca les donné minimum ! cool !


    et comme je travail avec des processus, j ai choisi un moyen IPC adapté a ma communication. Les tuyaux ou "pipes"
    Pour les details, cherche tout seul !

  5. #5
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    C'est nouveau ça comme IPC les tuyaux ? C'est de l'informatique que tu fais ou de la plomberie
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  6. #6
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Points : 661
    Points
    661
    Par défaut
    Citation Envoyé par hegros
    C'est nouveau ça comme IPC les tuyaux ? C'est de l'informatique que tu fais ou de la plomberie
    ca marche tres bien et ca n a rien a voir avec la plomberie. Je sais pas si c 'est obsolet mais en tout cas les performances sont au RDV.

    Citation Envoyé par MSDN
    Using Pipes for IPC


    There are two types of pipes for two-way communication: anonymous pipes and named pipes. Anonymous pipes enable related processes to transfer information to each other. Typically, an anonymous pipe is used for redirecting the standard input or output of a child process so that it can exchange data with its parent process. To exchange data in both directions (duplex operation), you must create two anonymous pipes. The parent process writes data to one pipe using its write handle, while the child process reads the data from that pipe using its read handle. Similarly, the child process writes data to the other pipe and the parent process reads from it. Anonymous pipes cannot be used over a network, nor can they be used between unrelated processes.

    Named pipes are used to transfer data between processes that are not related processes and between processes on different computers. Typically, a named-pipe server process creates a named pipe with a well-known name or a name that is to be communicated to its clients. A named-pipe client process that knows the name of the pipe can open its other end, subject to access restrictions specified by named-pipe server process. After both the server and client have connected to the pipe, they can exchange data by performing read and write operations on the pipe.
    Pour les details, cherche tout seul !

  7. #7
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    Oui les pipes existent personne ne dit le contraire mais les tuyaux c'est la première fois que j'entends cela quand on parle d'IPC
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  8. #8
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Points : 661
    Points
    661
    Par défaut
    Citation Envoyé par ZaaN
    Les tuyaux ou "pipes"
    c était une traduction literale
    Pour les details, cherche tout seul !

  9. #9
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    Citation Envoyé par ZaaN
    c était une traduction literale
    Mouais autant utiliser le vocabulaire informatique correct que tout le monde comprends et connaît sinon ca devient le bordel.
    " Dis ce que tu veux qui insulte mon honneur car mon silence sera la réponse au mesquin.
    Je ne manque pas de réponse mais : il ne convient pas aux lions de répondre aux chiens ! " [Ash-Shafi'i ]

  10. #10
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    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 379
    Points : 41 573
    Points
    41 573
    Par défaut
    En effet, le terme Français habituel, c'est "tube", pas "tuyau"...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

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

Discussions similaires

  1. demande avis : comment stocker les parametres d'une application
    Par ZashOne dans le forum Framework .NET
    Réponses: 9
    Dernier message: 30/03/2008, 19h14
  2. Réponses: 2
    Dernier message: 03/09/2007, 15h50
  3. Réponses: 7
    Dernier message: 24/08/2007, 10h57
  4. comment rendre une application multi instances ?
    Par Root_JDK dans le forum Delphi
    Réponses: 5
    Dernier message: 27/04/2007, 09h14
  5. Différencier les instances d'une même application
    Par Laurent.B dans le forum Plateformes (Java EE, Jakarta EE, Spring) et Serveurs
    Réponses: 4
    Dernier message: 19/09/2006, 16h00

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