Deadlock

Ein Deadlock ist in der Informatik ein Zustand, in dem sich mehrere Prozesse gegenseitig blockieren, weil der eine Prozess auf die Freigabe von Ressourcen wartet, die der andere Prozess belegt und vice versa. Dabei kann es sich auch um einen sich  blockierenden Kreislauf mehrerer Prozesse handeln.

Deadlock bei Datenbanken 
Dies können beispielsweise zwei oder mehrere Transaktionen bei einer Datenbank sein oder Prozesse bei einem Betriebssystem. Im Falle der Datenbank muss das Datenbankmanagementsystem (DBMS)  solche Deadlocks verhindern oder erkennen und auflösen.  Um Deadlocks zu verhindern muss das DBMS seine Prozesse sequentialisieren. Diese Deadlock-Lösungsstrategie kann nachteilig sein, da das DBMS auf parallele, sich gegenseitig triggernde Prozesse verzichten muss.  Um bereits bestehende Deadlocks zu erkennen und aufzulösen verbraucht das DBMS sehr viele Ressourcen.  Deswegen ist es eine gute Strategie, Prozesse erst nach einer Überprüfung freizugeben. Ausserdem sollte das DBMS auf verdächtige Prozesse, die in Wartestellung sind achten, z.B. i.V.m. einem Leerlauf des Prozessors.                                             
Siehe auch:    datenbank   betriebssysteme   Transaktion   ACID   Normalform   Rollback   Referentielle-Integrität   Konsistenz   Multiversion-Concurrency-Control   MySQL