Semaphoren
Lernziele
- Synchronisation mit Hilfe von Semaphoren
Aufgabe
oo-StuBS soll in dieser Aufgabe um Semaphore erweitert werden.
Mit Hilfe von Semaphoren besteht die Möglichkeit, Anwendungsprozesse
miteinander zu synchronisieren.
Darüberhinaus sollen sie dazu verwendet werden, Anwendungsprozesse bei
der Tastaturabfrage zu blockieren, bis eine Taste gedrückt wurde.
Hierzu müssen die Klassen Waitingroom
, Semaphore
,
Customer
, Organizer
, Guarded_Organizer
,
Guarded_Semaphore
und Guarded_Keyboard
implementiert,
die Klasse Keyboard
erweitert und die Klasse Thread
angepasst werden.
Vorgabe
Auch für diese Aufgabe gibt es von uns eine Vorgabe. Die zu implementierenden Klassen sowie die Signaturen der Methoden könnt ihr aus der Klassenbeschreibung in Doxygen entnehmen. Ihr solltet beachten, dass das UML-Diagramm nur einen groben Überblick geben soll und aufgrund der Überarbeitung der Vorgaben nicht unbeding mit der Implementierung übereinstimmt.