Der kritische Abschnitt bezieht sich auf das Programmsegment, das in gleichzeitigen Prozessen auf gemeinsam genutzte Variablen zugreift. Ein kritischer Abschnitt bezieht sich auf ein Programmfragment, das auf gemeinsam genutzte Ressourcen zugreift. Auf diese gemeinsam genutzten Ressourcen können nicht mehrere Threads gleichzeitig zugreifen. Es darf jeweils nur ein Prozess den kritischen Abschnitt betreten, und andere Prozesse dürfen den kritischen Abschnitt nach dem Betreten nicht betreten.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, Dell G3-Computer.
Der kritische Abschnitt bezieht sich auf das Programmsegment, das in gleichzeitigen Prozessen auf gemeinsam genutzte Variablen zugreift.
Einführung in kritische Abschnitte
Ein kritischer Abschnitt bezieht sich auf ein Programmfragment, das auf gemeinsam genutzte Ressourcen (z. B. gemeinsam genutzte Geräte oder gemeinsam genutzten Speicher) zugreift. Auf diese gemeinsam genutzten Ressourcen können nicht mehrere Threads gleichzeitig zugreifen. Wenn ein Thread in einen kritischen Abschnitt eintritt, müssen andere Threads oder Prozesse warten (z. B. begrenzte Wartemethode), um sicherzustellen, dass diese gemeinsam genutzten Ressourcen verwendet werden verwendet, zum Beispiel: Semaphor. Geräte, auf die nur ein einzelner Thread zugreifen kann, z. B. Drucker.
Der Codeabschnitt in jedem Prozess, der auf kritische Ressourcen zugreift, wird als kritischer Abschnitt bezeichnet (kritische Ressourcen sind gemeinsam genutzte Ressourcen, die jeweils nur von einem Prozess verwendet werden dürfen). Es darf jeweils nur ein Prozess den kritischen Abschnitt betreten, und andere Prozesse dürfen den kritischen Abschnitt nach dem Betreten nicht betreten. Unabhängig davon, ob es sich um eine hardwarekritische Ressource oder eine softwarekritische Ressource handelt, müssen mehrere Prozesse gegenseitig darauf zugreifen.
Kritische Abschnitte, die dieselbe kritische Ressource in mehreren Prozessen betreffen, werden als verwandte kritische Abschnitte bezeichnet. .
Das Planungsprinzip für Prozesse, die in den kritischen Abschnitt eintreten, lautet:
1 Wenn mehrere Prozesse den Eintritt in den kritischen Ruhebereich anfordern, darf jeweils nur ein Prozess eintreten.
2. Es kann zu keinem Zeitpunkt mehr als einen Prozess im kritischen Abschnitt geben. Wenn ein Prozess seinen eigenen kritischen Abschnitt betreten hat, müssen alle anderen Prozesse, die versuchen, in den kritischen Abschnitt einzutreten, warten.
3. Der Prozess, der den kritischen Abschnitt betritt, muss innerhalb einer begrenzten Zeit beendet werden, damit andere Prozesse rechtzeitig in seinen kritischen Abschnitt gelangen können.
4. Wenn der Prozess seinen eigenen kritischen Abschnitt nicht betreten kann, sollte er die CPU aufgeben, um das „Busy Waiting“-Phänomen des Prozesses zu vermeiden.
Verwandte Empfehlungen: „Programmiervideo“
Das obige ist der detaillierte Inhalt vonDer kritische Abschnitt bezieht sich darauf, auf welche gemeinsam genutzten Variablen in gleichzeitigen Prozessen zugegriffen wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!