Für eine korrekte Darstellung dieser Seite benötigen Sie einen XHTML-standardkonformen Browser, der die Darstellung von CSS-Dateien zulässt.

..
Suche

Personensuche
Veranstaltungssuche
Katalog der UB Siegen

Abwechselnde Ausgabe

Hinweise zur Benutzung der Demo
Die dargestellten Prozesse sind so synchronisiert, daß sie ihre Ausgaben streng abwechselnd ausführen.
  • Hinweis: Falls Sie oben kein Java-Applet sehen, unterstützt Ihr Browser keine Java-Applets mehr. Sie können in diesem Fall das Applet mit Hilfe des Java-Tools 'appletviewer' starten: appletviewer <URL dieser Seite>
  • Im linken Teil sind dargestellt:
    • Die verwendeten Semaphore mit dem aktuellen Wert des Semaphor-Zählers. Die Farben bedeuten:
      • grün: Semaphor ist frei (Zähler > 0)
      • gelb: Semaphor ist belegt, kein wartender Thread (Zähler = 0)
      • rot: Semaphor ist belegt, Threads warten (Zähler < 0)
    • Die Ausgabe der beiden Prozesse, bzw. bei längerer Ausgabe nur die letzten Zeichen. Beachten Sie, daß die Ausgabe immer abwechselnd 1 und 2 ist, also 121212...
    • Ein Feld zum globalen Einzelschrittbetrieb. Bei jedem Drücken des 'Einzelschritt'-Knopfes führt ein rechenbereiter Thread die nächste Codezeile aus.
      Über die Combo-Box 'Strategie' kann die Auswahlstrategie festgelegt werden:
      • Random: zufällig
      • RR, Round Robin: die Threads werden reihum ausgewählt; ein Thread, der einen Schritt ausgeführt hat und rechenbereit ist, stellt sich hinten wieder an.
      • FIFO: ein Thread wird solange ausgeführt, bis er blockiert. Erst dann kommt der nächste Thread.
      • Prio: die Threads erhalten eine Priorität, die von links oben nach rechts unten abnimmt. Es wird immer der rechenbereite Thread mit der höchsten Priorität ausgeführt.
      • rev. Prio: die Threads erhalten eine Priorität, die von links oben nach rechts unten zunimmt. Es wird immer der rechenbereite Thread mit der höchsten Priorität ausgeführt.
  • Im rechten Teil sind die beteiligten Threads (bzw. Prozesse) mit ihrem Quellcode dargestellt.
    • Die blaugrüne Markierung zeigt die nächste auszuführende Codezeile an.
    • Eine rote Markierung bedeutet, daß der Thread in dieser Zeile blockiert ist.
    Wenn der 'Einzelschritt'-Knopf gedrückt wird, führt der Thread die nächste Codezeile aus.
  • Zum Zurücksetzen der Demo drücken Sie den 'Reload'-Knopf Ihres Browsers.