OOStuBS/MPStuBS
IdleThread Klassenreferenz

Thread, der immer dann läuft, wenn eine CPU nichts zu tun hat. Mehr ...

#include <idlethread.h>

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

Öffentliche Methoden

void action ()
 Warten auf bereit werdenden Faden und schlafen.
 
- Öffentliche Methoden geerbt von Thread
 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 ...
 
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 ...
 
Waitingroomwaiting_in ()
 Hiermit kann abgefragt werden, in welchem Waitingroom Objekt der Thread eingetragen ist. Mehr ...
 
void waiting_in (Waitingroom *w)
 Mit dieser Methode wird im Thread vermerkt, dass dieser derzeit im Waitingroom w auf ein Ereignis wartet. Mehr ...
 

Weitere Geerbte Elemente

- Öffentliche Attribute geerbt von Thread
QueueLink< Threadqueue_link
 Verkettungszeiger für Scheduler und Waitingroom.
 

Ausführliche Beschreibung

Thread, der immer dann läuft, wenn eine CPU nichts zu tun hat.

Die Verwendung von IdleThread vereinfacht die Behandlung von "däumchendrehenden" Prozessoren.

Zu beachten
Instanzen von IdleThread sollten nie in der Bereitliste des Schedulers auftauchen, sondern immer getrennt gehalten werden, da sie ja nur dann ausgeführt werden sollen, wenn kein normaler Thread mehr bereit ist.

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