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

Threads & Processus C++ Discussion :

Gérer les threads / Mutex


Sujet :

Threads & Processus C++

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Gérer les threads / Mutex
    Bonjour ,

    J'essaie de développer une appli client-serveur , mais je rencontre quelques soucis pour gérer tout cela et faire ce que je veux .

    Je vous résume le truc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    void * threadenvoi(void * arg) /* Thread s'occupant de l'envoi */
    {
        /* Tant que le message envoyé n'est pas égal à fin */
    	{
                    //  On lit le message
     
           }
       	 /* ................. */
    	pthread_exit (EXIT_SUCCESS)    
    }
     
    void * threadrecevoir(void * arg) /* Thread s'occupant de la reception */
    {
     
     /* Tant que le message envoyé n'est pas égal à fin */
    	{
         	  	 cout << " resultat " << endl;
    		cout << message_qui_a_ete_recu << endl;
    	}
    	/* ....................... */
    	pthread_exit (EXIT_SUCCESS);
    }
     
    void * threadrecevoirerreur(void * arg)
    {
     
     
      while(....) 
        {
    	/* On recoit le message erreur */
     
        }
        /* ............................... */
    	pthread_exit (EXIT_SUCCESS);
     
    }
     
     
        pthread_create(&envoyer, NULL, threadenvoi,(void*)NULL);
    pthread_create(&recevoir, NULL, threadrecevoir,(void*)NULL);
         pthread_create(&recevoirErr,NULL,threadrecevoirerreur,(void*)NULL);
    pthread_join(recevoirErr,NULL);

    Le truc , c'est qu'on a 3 threads en boucle infini , et que il y a 3 étapes :
    Lecture du message
    Reception du message
    Reception du message erreur

    Sauf que niveau resultat , la lecture est ok , mais du fait des threads , le message d'erreur arrive des fois avant le message lui même et vice versa .

    Du coup , je me demandais comment faire pour qu'il y ait cet ordre précis :

    Lecture du message
    Reception du message
    Reception du message erreur

    J'espère que vous saurez m'aider ..
    Dernière modification par Invité ; 05/06/2013 à 21h23.

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

Discussions similaires

  1. Gérer les exceptions dans un thread
    Par Pynouz dans le forum C#
    Réponses: 5
    Dernier message: 06/10/2011, 12h29
  2. Comment créer un thread qui puisse gérer les éléments de l'IHM
    Par SuperSeb95 dans le forum Multithreading
    Réponses: 14
    Dernier message: 18/05/2011, 11h43
  3. les thread et mutex et cond
    Par quark22 dans le forum Débuter
    Réponses: 3
    Dernier message: 10/07/2010, 18h01
  4. [Pascal / SDL] Problème pour gérer les Threads…
    Par Sn00ze92 dans le forum Langage
    Réponses: 2
    Dernier message: 24/02/2009, 17h40
  5. gérer les threads
    Par youp_db dans le forum Concurrence et multi-thread
    Réponses: 5
    Dernier message: 08/01/2006, 16h42

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