Ansichten eines Informatikers

Informatik-Probleme am praktischen Beispiel: Der Deadlock

Hadmut
25.11.2025 16:20

Informatikern wird oft nachgesagt, dass sie sich mit Problemen befassen, die es ohne sie gar nicht gäbe.

Das stimmt so nicht ganz.

Ein klassisches Problem der Informatik ist der sogenannte „Deadlock“, etwa wenn sich Prozesse gegenseitig blockieren, weil jeder im Kreis herum dem anderen im Weg steht. So eine Art Henne-Ei-Problem, nur rückwärts. Jeder Prozess blockiert einen anderen, und weil jeder Prozess selbst blockiert wird, kann sich kein Prozess voranbewegen und seinerseits den von ihm blockierten Prozess wieder freigeben.

Manchmal ein Folge fehlender Semaphoren (so etwas ähnliches wie eine Verkehrsampel).

Ein Deadlock von Prozessen ist ein typisches Informatikerproblem, das jeder Informatiker (naja, zugegeben, nur noch die besseren) kennt – und fürchtet. Deshalb gibt man sich normalerweise große Mühe, genau das zu vermeiden, denn es ist sehr gefährlich: Es kann ein System, das sonst lange Zeit (scheinbar) stabil läuft, durch ein zufällig eintretendes Sonderereignis, das nur selten vorkommt, plötzlich blockieren und zum Stillstand bringen, und zwar einem, aus dem man auch durch manuelles Eingreifen nur schwer oder gar nicht, oder zumindest nicht ohne Daten-/Prozessverlust wieder herauskommt.

Die Crux daran: Es ist schwer, das Nichtinformatikern zu erklären.

Ein praktisches Paradebeispiel ist (kein KI-Foto, ist am 24.11.25 am Alexander Kiellands Pass in Oslo passiert, zwei Busse der Linie 21 und zwei der Linie 54) das: Vier Gelenkbusse fahren aus vier Richtungen exakt gleichzeitig in einen Kreisverkehr, und weil sie sich ja biegen können, in so eine Situation, dass jeder Bus den hinter ihm blockiert:

Es heißt, es habe 10 Minuten zentimeterweisen Rangierens benötigt, sie aus dem Zustand wieder zu befreien.

Schönes, praktisches Beispiel für ein Informatikproblem, der Deadlock zwischen Prozessen anschaulich erklärt.