Handles vs. Threads vs. Prozesse

Handles vs. Threads vs. Prozesse

Gibt es einen Unterschied zwischen einem Thread und einem Prozess?

Ich versuche, die Berechnungen der auf der Registerkarte „Leistung“ aufgeführten Systemdaten zu verstehen.

Handles: 48097 Threads: 1602 Prozesse: 99 Betriebszeit: 17:23:02:02 Commit (GB): 3/15

Antwort1

Da die Antwort von StackOverflow so abstrakt und betriebssystemunabhängig ist, dass sie für die betriebssystemspezifische Frage nutzlos ist, veröffentliche ich eine Windows-spezifische Antwort.

Ein Prozessist eine isolierte Speicherstruktur, die eine Anwendung in Betriebssystem-Hardware und -Software unterstützt. Ein Windows-Prozess enthält 1 oder mehrere Threads. https://en.wikipedia.org/wiki/Process_%28computing%29

Ein Threadist ein Strom von sequentiellen Maschinencode-Anweisungen, die der Prozessor ausführt. Mit Ausnahme von Interrupts: Immer wenn die CPU eine Anweisung im Auftrag einer Anwendung ausführt, tut sie dies, weil ein Thread sie enthielt. Threads innerhalb eines Prozesses können auf den Speicher des Prozesses zugreifen (sofern die spezifische Operation auf dem Speicherelement „threadsicher“ ist und keine unübereinstimmendenParallelitätProbleme, wenn mehr als ein Thread gleichzeitig ausgeführt wird). Eine Anwendung kann ihren Betrieb beschleunigen, indem sie mehrere Threads verwendet, von denen jeder eine isolierte Aufgabe ausführt, indem er seinen Befehlsstrom über eine andere CPU laufen lässt.Ausführungseinheit(CPU/Core/virtueller Core) gleichzeitig.https://en.wikipedia.org/wiki/Thread_%28computing%29

Ein Griffist eine logische Verbindung mit einer gemeinsam genutzten Ressource wie einer Datei, einem Fenster, einem Speicherort usw. Wenn ein Thread eine Datei öffnet, erstellt er einen „Handle“ für die Datei und intern fungiert dieser als „Name“ für diese Instanz der Datei. Handles werden verwendet, um auf vorübergehende oder Umgebungsressourcen außerhalb der Speicherstruktur des Prozesses zu verweisen. EinLeck behandelnist eine Art Softwareproblem, das in extremen Fällen ein System destabilisieren kann. Es wird dadurch verursacht, dass ein Programm einen Handle für eine Ressource anfordert und es nicht schafft, diesen freizugeben, wenn das Programm mit der Ressource fertig ist. Basierend auf Ihrer Nummer sehe ich da jedoch nichts Falsches.https://en.wikipedia.org/wiki/Handle_%28computing%29

verwandte Informationen