Deadlock bedeutet, dass beim gleichzeitigen Rechnen zwei oder mehr Prozesse in einen unendlichen Wartezustand geraten, weil sie darauf warten, dass der andere Ressourcen freigibt, was dazu führt, dass das System die Ausführung nicht fortsetzen kann. Deadlock ist eine Situation des Ressourcenwettbewerbs Jeder Teilnehmer wartet darauf, dass andere Teilnehmer Ressourcen freigeben, aber aufgrund der gegenseitigen Abhängigkeit untereinander kann kein Teilnehmer die Ausführung fortsetzen.
Das Betriebssystem dieses Tutorials: Windows 10-System, Dell G3-Computer.
Deadlock bedeutet, dass beim gleichzeitigen Rechnen zwei oder mehr Prozesse (oder Threads) in einen unendlichen Wartezustand geraten, weil sie darauf warten, dass der andere Ressourcen freigibt, was dazu führt, dass das System die Ausführung nicht fortsetzen kann. Einfach ausgedrückt handelt es sich bei einem Deadlock um eine Situation des Ressourcenkonflikts, in der jeder Teilnehmer darauf wartet, dass die anderen Teilnehmer Ressourcen freigeben, aber aufgrund ihrer gegenseitigen Abhängigkeit kein Teilnehmer in der Lage ist, die Ausführung fortzusetzen.
Deadlock beinhaltet normalerweise die folgenden vier notwendigen Bedingungen:
Gegenseitiger Ausschluss: Mindestens eine Ressource kann gleichzeitig nur von einem Prozess (oder Thread) belegt werden, das heißt, sie kann nur von einem Prozess belegt werden ( oder Thread) zu einem bestimmten Zeitpunkt.
Anforderungs- und Haltebedingung (Halten und Warten): Ein Prozess hält weiterhin die Ressource, die er erhalten hat, während er auf die ihm zugewiesene Ressource wartet.
No Preemption: Ressourcen, die einem Prozess zugewiesen wurden, können nicht gewaltsam entzogen werden und können nur durch den Prozess selbst freigegeben werden.
Zirkuläre Wartebedingung (zirkuläres Warten): Es gibt eine Prozesskette, und jeder Prozess wartet auf die vom nächsten Prozess belegten Ressourcen, wodurch eine geschlossene Wartekette entsteht.
Wenn diese vier Bedingungen gleichzeitig erfüllt sind, kommt es zu einem Deadlock. In einem Deadlock-Zustand kann das System nicht fortfahren, es sei denn, es wird eingegriffen, um den Deadlock zu durchbrechen.
Das Auftreten eines Deadlocks kann zur Verschwendung von Systemressourcen, Leistungseinbußen und sogar zum Systemabsturz führen. Daher ist es beim Entwurf eines gleichzeitigen Systems erforderlich, Deadlocks zu vermeiden und Deadlocks durch angemessene Ressourcenzuweisungs- und Planungsalgorithmen zu verhindern und zu behandeln.
Das obige ist der detaillierte Inhalt vonWas ist das Konzept des Deadlocks?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!