Ziele:
Leser/Schreiber-Synchronisation verstehen
in der Vorlesung:
Erläuterungen
- zum Leser/Schreiber-Problem,
- zur Monitor-Invarianten,
- zu den Entwurfsschritten.
Übungsaufgaben:
- Implementieren Sie den Monitor.
- Implementieren Sie Leser- und Schreiber-Prozesse dazu.
Bremsen Sie sie mit sleep und Zufallszahlen als Parameter.
Produzieren Sie Ausgabe mit dem Beobachtungsmodul.
- Damit Schreiber nicht "verhungern" setzen Sie folgende
Strategie um: Neue Leser müssen warten, bis kein Schreiber
mehr wartet. Verwenden Sie eine weitere Zählvariable.
Was beobachtenSie?
Verständnisfragen:
Ein ähnliches aber symmetrisches Schema ist die
Aufgabe, den Verkehr über eine nur einspurig befahrbare
Brücke zu regeln. Erläutern Sie!
|