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 7

Ein Thread, der auf ein Ereignis warten kann. Mehr ...

#include <customer.h>

Klassendiagramm für Customer:
Zusammengehörigkeiten von Customer:

Öffentliche Methoden

 Customer (void *tos)
 Konstruktor.
Waitingroomwaiting_in ()
 Hiermit kann abgefragt werden, in welchem Waitingroom Objekt der Customer eingetragen ist.
void waiting_in (Waitingroom *w)
 Mit dieser Methode wird im Customer vermerkt, dass dieser derzeit im Waitingroom w auf ein Ereignis wartet.
- Öffentliche Methoden geerbt von Entrant
 Entrant (void *tos)
 Der Entrant Konstruktor gibt nur den Parameter tos an den Coroutinen Konstruktor weiter.
- Öffentliche Methoden geerbt von Coroutine
 Coroutine (void *tos)
 Konstruktor.
void go ()
 Aktiviert die erste Koroutine auf einem Prozessor.
void resume (Coroutine &next)
 Wechsel von der aktuell laufenden Koroutine zur nächsten.
virtual void action ()=0
 Methode, die als Koroutine ausgeführt werden soll.
void set_kill_flag ()
 Setzen des Kill-Flags. Prozess wechselt in den Zustand sterbend. Wird nur für MPStuBS benötigt.
void reset_kill_flag ()
 Zurücksetzen des Kill-Flags. Prozess ist damit gestorben. Wird nur für MPStuBS benötigt.
bool dying ()
 Abfragen des Kill-Flags. Nachschauen, ob der Prozess gerade stirbt. Wird nur für MPStuBS benötigt.

Weitere Geerbte Elemente

- Öffentliche Attribute geerbt von Chain
Chainnext
 next gibt das nächste Chain Element der Liste an.

Ausführliche Beschreibung

Ein Thread, der auf ein Ereignis warten kann.

Die Klasse Customer erweitert die Klasse Entrant um die Möglichkeit, ein Ereignis, auf das der betreffende Prozess wartet, zu vermerken und abzufragen.

Beschreibung der Konstruktoren und Destruktoren

Customer::Customer ( void *  tos)
inline

Konstruktor.

Der Konstruktor leitet den Parameter tos an den Konstruktor der Basisklasse Entrant weiter.

Parameter
tosTop of Stack

Dokumentation der Elementfunktionen

Waitingroom* Customer::waiting_in ( )
inline

Hiermit kann abgefragt werden, in welchem Waitingroom Objekt der Customer eingetragen ist.

Ein Rückgabewert von 0 soll bedeuten, dass der Prozess auf überhaupt kein Ereignis wartet, also entweder der aktuell laufende Prozess ist, auf der Ready-Liste des Schedulers steht, bereits terminiert ist oder noch gar nicht beim Scheduler angemeldet wurde.

Rückgabe
Zeiger auf das Waitingroom, in dem dieser Prozess wartet, oder 0.
void Customer::waiting_in ( Waitingroom w)
inline

Mit dieser Methode wird im Customer vermerkt, dass dieser derzeit im Waitingroom w auf ein Ereignis wartet.

Parameter
wWaitingroom, in dem dieser Prozess wartet.

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:
  Impressum   Datenschutz Stand: 2013-01-31 15:49   BO, DL