Verklemmung

Eine Verklemmung ist ein Zustand, in dem ein Programm nicht auf eine benötigte Ressource zugreifen kann, um fortzufahren. Wenn eine aktive Anwendung in eine Verklemmung gerät, kann sie „hängen“ oder nicht mehr reagieren.

Ressourcen wie gespeicherte oder zwischengespeicherte Daten können gesperrt werden, wenn innerhalb eines Programms ein bestimmter Prozess darauf zugreift. Durch das Sperren der Daten wird verhindert, dass andere Prozesse die Daten vorzeitig überschreiben. Wenn ein Prozess oder eine Abfrage auf gesperrte Daten zugreifen muss, der Prozess, der die Daten sperrt, sie aber nicht freigibt, kann eine Verklemmung auftreten.

Das folgende Beispiel führt zu einer Verklemmung zwischen zwei Prozessen:

  • Prozess 1 fordert Ressource B von Prozess 2 an.
  • Ressource B ist gesperrt, während Prozess 2 ausgeführt wird.
  • Prozess 2 benötigt Ressource A von Prozess 1, um seine Ausführung abzuschließen.
  • Ressource A ist gesperrt, während Prozess 1 ausgeführt wird.

Das Ergebnis ist, dass Prozess 1 und Prozess 2 darauf warten, dass der jeweils andere Prozess fertig wird. Da keiner der beiden Prozesse fortfahren kann, bevor der andere abgeschlossen ist, entsteht eine Verklemmung.

Verklemmungen vermeiden

Entwickler können Verklemmungen verhindern, indem sie Sperrbedingungen in ihrer Programmlogik vermeiden. Statt beispielsweise zwei Prozesse voneinander abhängig zu machen, kann der Quellcode so geschrieben werden, dass jeder Thread beendet wird, bevor ein anderer Thread seine Ressourcen benötigt. Indem sichergestellt wird, dass Daten bei Bedarf zugänglich sind, können Programmierer ihre Anwendungen vor dem Hängenbleiben oder Abstürzen schützen.

NOTE: Verklemmungen können auch auftreten, wenn zwei oder mehr Abfragen in einer Datenbank ausgeführt werden. Transaktionsdatenbanken sperren aktive Datensätze, sodass andere Abfragen nicht darauf zugreifen können. Wenn ein Prozess nicht auf einen gesperrten Datensatz zugreifen kann, kann eine Verklemmung in der Datenbank auftreten.

Aktualisiert January 18, 2020 von Per C.

quizTesten Sie Ihr Wissen

In what year did Microsoft release Windows RT?

A
2002
0%
B
2008
0%
C
2012
0%
D
2016
0%
Correct! Incorrect!     View the Windows RT definition.
More Quizzes →

Das Tech Terms Computer-Lexikon

Die Definition von Verklemmung auf dieser Seite wurde von den Autoren von TechTerms.com verfasst. Wenn Sie auf diese Seite verweisen oder diese Definition zitieren möchten, verwenden Sie bitte die grüne Zitierleiste direkt unterhalb der Definition.

Unser Ziel ist es, Computerbegriffe auf verständliche Weise zu erklären. Wir streben bei jeder veröffentlichten Definition nach Genauigkeit und Einfachheit. Wenn Sie Feedback zu dieser Definition haben oder einen neuen Fachbegriff vorschlagen möchten, kontaktieren Sie uns.

Der Tech Terms Newsletter

Erweitern Sie Ihr technisches Wissen mit unserem täglichen oder wöchentlichen Newsletter! Abonnieren Sie noch heute und erhalten Sie neue Begriffe und Quizze in Ihren Posteingang.

Melden Sie sich für den kostenlosen TechTerms‑Newsletter an

Wie oft möchten Sie eine E-Mail erhalten?

Sie können sich jederzeit über die Links in jeder E-Mail abmelden oder Ihre Einstellungen ändern. Fragen? Bitte kontaktieren Sie uns.

Hinweis: Der Newsletter wird auf Englisch versandt.