Programmation Concurrente (2016)


Rejoignez le forum, c’est rapide et facile

Programmation Concurrente (2016)
Programmation Concurrente (2016)
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment : -50%
-50% sur les sacs à dos pour ordinateur ...
Voir le deal
19.99 €

Question sur la terminaison du problème du barbier

2 participants

Aller en bas

Question sur la terminaison du problème du barbier Empty Question sur la terminaison du problème du barbier

Message par antoinezim Lun Oct 16, 2017 6:38 pm

Bonjour,
je n'ai pas bien compris quelle condition doit vérifier le programme pour terminer.

J'ai cru comprendre qu'il fallait faire quelque chose comme :
threadBarbier.interrupt();
Puis récupérer l'exception levée par le wait() mettant en attente le travail du barbier lorsque le salon est vide pour finir le thread.

Je pensais que la condition était "Si le salon est vide alors on termine le thread du barbier", or le barbier peut finir le travail avec le premier client avant que le 2e client arrive => terminaison du thread du barbier avant l'arrivée du deuxième client.


antoinezim

Posts : 2
Join date : 16/10/2017

Revenir en haut Aller en bas

Question sur la terminaison du problème du barbier Empty Re: Question sur la terminaison du problème du barbier

Message par ClaudeDutheillet Mar Oct 17, 2017 9:55 am

Et donc vous répondez à la question que vous posez :-) : il ne suffit pas que le salon soit vide, il faut qu'il n'y ait plus de clients pour que le barbier puisse se terminer. Seule la tâche principale dispose de cette information. C'est donc à elle d'"interrompre" le barbier lorsque tous les clients sont terminés.

La modification de l'interrupted status doit ensuite être détectée dans le thread du barbier, soit par une interrogation explicite (méthode interrupted), soit implicitement : toutes les méthodes d'attente interrogent périodiquement la valeur de ce drapeau et lèvent une InterruptedException lorsqu'elles détectent que celui-ci est positionné.


ClaudeDutheillet

Posts : 5
Join date : 26/08/2016

Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum