Friedrich-Alexander-Universität UnivisSuche FAU-Logo
Techn. Fakultät Willkommen am Department Informatik FAU-Logo
Logo I4
Lehrstuhl für Informatik 4
Betriebssysteme
 
  Vorlesung
    - UnivIS-Infos
    - Inhalt
    - Folien
    - Videos
 
  Übungen
    - UnivIS-Infos
    - Inhalt
    - Module
    - Mailingliste
    - Ergänzendes Material
    - Terminübersicht
    - Aufgaben
       * Umgebung
       * Typische Fehler
       * Aufgabe 1
          Dokumentation
       * Aufgabe 2
          Dokumentation
       * Aufgabe 3
          Dokumentation
       * Aufgabe 4
          Dokumentation
       * Aufgabe 5
          Dokumentation
       * Aufgabe 6
          Dokumentation
       * Aufgabe 7
          Dokumentation
 
  Evaluation
Department Informatik  >  Informatik 4  >  Lehre  >  WS 2012/13  >  Betriebssysteme  >  Übungen  >  Aufgaben  >  Aufgabe 6

Synchronisationsobjekt zum Schlafenlegen fĂĽr eine bestimmte Zeitspanne. Mehr ...

#include <buzzer.h>

Klassendiagramm fĂĽr Buzzer:
Zusammengehörigkeiten von Buzzer:

Ă–ffentliche Methoden

 Buzzer ()
 Konstruktor.
virtual ~Buzzer ()
 Destruktor.
void ring ()
 Läuten der Glocke.
void set (int ms)
 Stellen des Weckers.
void sleep ()
 Schlafen, bis der Wecker klingelt.
void sleep (int ms)
 Wecker aufziehen und dann gleich schlafen bis der Wecker klingelt.
- Ă–ffentliche Methoden geerbt von Waitingroom
virtual ~Waitingroom ()
 Destruktor.
virtual void remove (Customer *customer)
 Mit dieser Methode kann der angegebene Prozess customer vorzeitig aus dem Wartezimmer entfernt werden.
- Ă–ffentliche Methoden geerbt von Queue
 Queue ()
 Der Konstruktor initialisiert die Liste als leere Liste.
void enqueue (Chain *item)
 Das Listenelement item wird an das Ende der Liste angefĂĽgt.
Chaindequeue ()
 Liefert das erste Element der Liste und entfernt es gleichzeitig aus dieser.
bool remove (Chain *item)
 Mit dieser Methode kann das angegebene Element item aus der Liste entfernt werden, unabhängig von seiner Position dort.
- Ă–ffentliche Methoden geerbt von Bell
 Bell ()
 Konstruktor.
void wait (int value)
 Setzen des Zählers.
int wait ()
 Auslesen des Zählers.
void tick ()
 Dekrementieren des Zählers um 1.
bool run_down ()
 Abfragen, ob die Zeit abgelaufen ist.

Weitere Geerbte Elemente

- Ă–ffentliche Attribute geerbt von Bell
int counter
- GeschĂĽtzte Attribute geerbt von Queue
Chainhead
Chain ** tail

AusfĂĽhrliche Beschreibung

Synchronisationsobjekt zum Schlafenlegen fĂĽr eine bestimmte Zeitspanne.

Ein "Wecker" ist ein Synchronisationsobjekt, mit dem ein oder mehrere Threads sich für eine bestimmte Zeit schlafen legen können.

Beschreibung der Konstruktoren und Destruktoren

Buzzer::Buzzer ( )
inline

Konstruktor.

Der Wecker ist zunächst noch abgeschaltet.

Buzzer::~Buzzer ( )
virtual

Destruktor.

Im Destruktor wird der Glöckner (Bellringer) informiert, dass er nicht mehr läuten muss. Außerdem werden alle wartenden Threads geweckt.

Dokumentation der Elementfunktionen

void Buzzer::ring ( )
virtual

Läuten der Glocke.

Wird von Glöckner aufgerufen, wenn die Wartezeit abgelaufen ist. Weckt ggfs. schlafende Threads.

Implementiert Bell.

void Buzzer::set ( int  ms)

Stellen des Weckers.

Parameter
msZeit in Millisekunden, auf die der Wecker gestellt werden soll.

Erneute Implementation in Guarded_Buzzer.


Die Dokumentation fĂĽr diese Klasse wurde erzeugt aufgrund der Dateien:
  Impressum   Datenschutz Stand: 2013-01-18 12:56   BO, DL