Moniteur lecteur/redaceteur java

Fermé
imadin Messages postés 3 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 6 novembre 2008 - 17 févr. 2008 à 09:05
imadin Messages postés 3 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 6 novembre 2008 - 17 févr. 2008 à 11:56
Bonjour,
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

le code de moniteur est comme suit :
public class ReadersWriters
{
public ......... void startWrite()
{
/* wait until it is ok to write */
while(.......... || ..........)
{
............;
wait();
............;
}
writing=........;
}
public ......... void stopWrite()
{
...........
notifyAll();
}
public ........ void startRead()
{
/*wait until it is ok to read */
while (.......... || ........... > 0)
wait();
............;
}
public ......... void stopRead()
{
........;
if(..........)
notifyAll();
}

private int readers = 0 ;
private int waitingWriting = .........;
private boolean writing = false ;
}


j essai de completer le code
public class ReadersWriters
{
public synchronized void startWrite()
{
/* wait until it is ok to write */
while(writing || waitingWriters > 0)
{
waitingWriters++;
wait();
waitingWriters--;
}
writing=true;
}
public synchronized void stopWrite()
{
writing=false;
notifyAll();
}
public synchronized void startRead()
{
/*wait until it is ok to read */
while (writing || waitingWriters > 0)
wait();
readers++;
}
public synchronized void stopRead()
{
readers--;
if(readers = 0)
notifyAll();
}

private int readers = 0 ;
private int waitingWriting = 0 ;
private boolean writing = false ;
}

je suis debutant
aide moi avec petit explication pour cette moniteur et corriger mes erreurs svp
et j ai un autre question
pourqoi la classe ٌReadersWriters n herite pas de la classe thread
et merci d avance
A voir également:

1 réponse

imadin Messages postés 3 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 6 novembre 2008
17 févr. 2008 à 11:56
svp aide moi
0