Friedrich-Alexander-Universität Erlangen-Nürnberg  /   Technische Fakultät  /   Department Informatik

Übungen zu BS - Dokumentation Aufgabe 4 (WS 2015/16)

Thread Klassenreferenzabstract
Klassendiagramm für Thread:
Zusammengehörigkeiten von Thread:

Öffentliche Methoden

 Thread (void *tos)
 Konstruktor. Mehr ...
 
void go ()
 Aktiviert den ersten Thread auf einem Prozessor. Mehr ...
 
void resume (Thread *next)
 Wechsel von dem aktuell laufenden Thread zum nächsten. Mehr ...
 
virtual void action ()=0
 Methode, die als Thread ausgeführt werden soll. Mehr ...
 
void set_kill_flag ()
 Setzen des Kill-Flags. Thread wechselt in den Zustand sterbend. Wird nur für MPStuBS benötigt. Mehr ...
 
void reset_kill_flag ()
 Zurücksetzen des Kill-Flags. Thread ist damit gestorben. Wird nur für MPStuBS benötigt. Mehr ...
 
bool dying ()
 Abfragen des Kill-Flags. Nachschauen, ob der Thread gerade stirbt. Wird nur für MPStuBS benötigt. Mehr ...
 
- Öffentliche Methoden geerbt von QueueEntry< Thread >
Threadgetnext ()
 Gibt das nächste Element in der Liste zurück (read-only-Zugriff). Mehr ...
 

Beschreibung der Konstruktoren und Destruktoren

Thread::Thread ( void *  tos)

Konstruktor.

Initialisiert den Kontext mit Hilfe von toc_settle

Parameter
tosTop of Stack, also die höchste Adresse des Speicherbereiches, der als Stack für diesen Thread fungieren soll.

Dokumentation der Elementfunktionen

virtual void Thread::action ( )
pure virtual

Methode, die als Thread ausgeführt werden soll.

Abgeleitete Klassen können durch Überschreiben dieser Methode den Code angeben, der als Thread ausgeführt werden soll.

Implementiert in Application und KeyboardApplication.

bool Thread::dying ( )
inline

Abfragen des Kill-Flags. Nachschauen, ob der Thread gerade stirbt. Wird nur für MPStuBS benötigt.

void Thread::go ( )

Aktiviert den ersten Thread auf einem Prozessor.

Durch den Aufruf von Thread::go() wird der erste Thread auf dem jeweiligen Prozessor gestartet. Alle weiteren Threadwechsel sollen dann mit Hilfe der Methode Thread::resume() ausgeführt werden.

void Thread::reset_kill_flag ( )
inline

Zurücksetzen des Kill-Flags. Thread ist damit gestorben. Wird nur für MPStuBS benötigt.

void Thread::resume ( Thread next)

Wechsel von dem aktuell laufenden Thread zum nächsten.

Die aktuelle Belegung der nicht-flüchtigen Register wird in dem toc Element gesichert und durch die Werte von next (dem toc Element des nächsten Threads) ersetzt.

Parameter
nextZeiger auf den nächsten Thread, der laufen soll.
void Thread::set_kill_flag ( )
inline

Setzen des Kill-Flags. Thread wechselt in den Zustand sterbend. Wird nur für MPStuBS benötigt.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien: