Diese Simulation zeigt, wie eine Ampel den Verkehr steuert. Der Button „Ampel umschalten“ wechselt
zwischen Rot und Grün – so wird ein synchronisierter Ablauf dargestellt. Wird der Button „Ohne
Synchronisation“ gedrückt, simuliert dies ein Szenario, in dem die Steuerung fehlt und alle Fahrzeuge
gleichzeitig fahren – was zu einer gefährlichen Situation führen kann.
Drucker-Warteschlange (Producer-Consumer)
In dieser Simulation werden Druckaufträge in einer Warteschlange gesammelt und nacheinander abgearbeitet.
Eine geordnete (synchronisierte) Verarbeitung verhindert, dass mehrere Aufträge gleichzeitig verarbeitet
werden – ohne diese Steuerung können Race Conditions und Fehler auftreten. Alle Aktionen werden im Log protokolliert.
Bankkonto-Simulation (Race Condition)
Aktueller Kontostand: 100
Diese Simulation zeigt, wie zwei Benutzer gleichzeitig auf ein gemeinsames Bankkonto zugreifen.
Ohne Synchronisation (Race Condition) kann es passieren, dass beide den gleichen Kontostand lesen und
dadurch das Konto in einen negativen Bereich geraten kann. Mit einer Synchronisation (Lock) wird der
Zugriff geordnet und Konflikten vorgebeugt. Alle Abhebungen werden im Log dokumentiert.
Philosophenproblem (Spaghetti-Essen)
In dieser Simulation sitzen fünf Philosophen in einem Kreis. Zwischen ihnen liegen Gabeln. Wird versucht,
dass alle gleichzeitig essen (ohne geeignete Synchronisation), entsteht ein Deadlock – alle warten ewig
auf die Gabeln. Bei der synchronisierten Lösung hebt jeweils ein Philosoph sichtbar eine Gabel auf, isst und
gibt sie anschließend frei. Es wird verhindert, dass die Simulation mehrfach parallel gestartet wird.
Brücken-Simulation (Wechselseitiger Ausschluss)
Hier wird veranschaulicht, wie Fahrzeuge aus zwei Richtungen eine einspurige Brücke überqueren.
Im synchronisierten Modus darf immer nur eine Fahrtrichtung die Brücke nutzen.
In unsynchronisierten Szenarien können Fahrzeuge aus beiden Richtungen gleichzeitig starten.
Die Animation läuft so lange, bis Fahrzeuge mit unterschiedlichen Farben (als Kennzeichen) kollidieren –
was im Log protokolliert wird.
Ticketverkauf (Race Condition & Synchronisation)
Verfügbare Tickets: [1, 2, 3, 4, 5]
Beim Online-Ticketverkauf konkurrieren mehrere Benutzer um Tickets mit eindeutigen Nummern.
Ohne Synchronisation können zwei Benutzer theoretisch dasselbe Ticket (gleiche Nummer) erwerben –
was den Konflikt sichtbar macht. Mit synchronisiertem Zugriff wird sichergestellt, dass jedes Ticket nur einmal
verkauft wird. Alle Kaufvorgänge werden im Log dokumentiert.