Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2976 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  moniteur lécteur rédacteur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

moniteur lécteur rédacteur

n°1687717
imadin
Posté le 18-02-2008 à 11:27:01  profilanswer
 

dans cette probléme
on suppose que la priorité est donné aux rédacteurs qui attendent . Ainsi dès
qu ' un rédacteur est disponible , tous les nouveaux lecteurs sont bloqués jusqu a ce que tous les rédacteurs auront terminés . bien sur , dans d'extremes situations cela va mener à une famine des lecteurs
 
on utilise un moniteur requie 4 méthodes startRead,stopRead,startWrite et stopWrite , les Deux premiéres implémentent respectivement les sections d entrée et de sortie .les deux autres implémentent celles des rédacteurs.ainsi les lecteurs sont structurés comme suit :
 
startRead(); // entry protocol
//Call object to read data structure
stopRead(); // exit protocol
 
de maniére similaire ,les rédacteurs :
startWrite();
//........
stopWrite();
le travail demandé est de compléter le code du moniteur ReadersWriters
 

Code :
  1. public class ReadersWriters
  2. {
  3. public ......... void startWrite()
  4. {
  5. /* wait until it is ok to write */
  6. while(.......... || ..........)
  7. {
  8. ............;
  9. wait();
  10. ............;
  11. }
  12. writing=........;
  13. }
  14. public ......... void stopWrite()
  15. {
  16. ...........
  17. notifyAll();
  18. }
  19. public ........ void startRead()
  20. {
  21. /*wait until it is ok to read */
  22. while (.......... || ........... > 0)
  23. wait();
  24. ............;
  25. }
  26. public ......... void stopRead()
  27. {
  28. ........;
  29. if(..........)
  30. notifyAll();
  31. }
  32. private int readers = 0 ;
  33. private int waitingWriting = .........;
  34. private boolean writing = false ;
  35. }


 
j essai de compléter le code  
 

Code :
  1. public class ReadersWriters
  2. {
  3. public synchronized  void startWrite()
  4. {
  5.  /* wait until it is ok to write */
  6.  while(writing || waitingWriters > 0)
  7.  {
  8.   waitingWriters++;
  9.   wait();
  10.   waitingWriters--;
  11.  }
  12.  writing=true;
  13. }
  14. public synchronized  void stopWrite()
  15. {
  16.  writing=false;
  17.  notifyAll();
  18. }
  19. public  synchronized void  startRead()
  20. {
  21.  /*wait until it is ok to read */
  22.  while (writing || waitingWriters > 0)
  23.   wait();
  24.   readers++;
  25. }
  26. public  synchronized void stopRead()
  27. {
  28.  readers--;
  29.  if(readers = 0)
  30.   notifyAll();
  31. }
  32. private  int readers = 0 ;
  33. private  int waitingWriting = 0 ;
  34. private boolean  writing = false ;
  35. }


 
je suis nouveau
est qu il ya des erreurs
et pourquoi la classe ReadersWriters n hérite pas de la classe Thread ?

mood
Publicité
Posté le 18-02-2008 à 11:27:01  profilanswer
 

n°1688158
imadin
Posté le 19-02-2008 à 07:51:25  profilanswer
 

aucune réponse ?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  moniteur lécteur rédacteur

 

Sujets relatifs
Lecteur de newscapter canal+ avec un lecteur dvd portable?? possible
Lecteur MP3 sur site wen, petit problemeLecteur audio pour site web
Ejecter / Fermer lecteur CD avec le clic droit[resolu] recuperer le flux audio d'un lecteur flash ?
fichier *.HTA, autodétection de la lettre du lecteur cdLecteur mp3 sans arret entre 2 pages
Récupérer lecteur MYSPACE[Clos]Inseré Lecteur multimedia
Plus de sujets relatifs à : moniteur lécteur rédacteur


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR