Frage Handles vs Threads vs Prozesse


Gibt es einen Unterschied zwischen einem Thread und einem Prozess?

Ich versuche, die Berechnungen der Systemdaten zu verstehen, die auf der Registerkarte Leistung aufgeführt sind.

Handles: 48097 Themen: 1602 Prozesse: 99 Up Zeit: 17: 23: 02: 02 Commit (GB): 3/15


4
2018-04-15 13:24


Ursprung


Ja. Was hat deine Forschung dir erzählt? Hast du nach "Was ist der Unterschied zwischen einem Thread und einem Prozess" gesucht? - DavidPostill♦
Paketüberfluss Duplikat Was ist der Unterschied zwischen einem Prozess und einem Thread? - DavidPostill♦
Meine Forschung ist Teil des Fragens. Hoffe, das ist nicht zu verwirrend - JohnNg
Es ist sehr verwirrend. Bitte lesen Sie Wie stelle ich eine gute Frage? es heißt "Haben Sie gründlich nach einer Antwort gesucht, bevor Sie Ihre Frage gestellt haben? Teilen Sie Ihre Forschung hilft allen. Sagen Sie uns, was Sie gefunden haben und warum es nicht Ihren Bedürfnissen entspricht. Das zeigt, dass Sie sich die Zeit genommen haben, sich selbst zu helfen, es erspart uns, die offensichtlichen Antworten zu wiederholen, und vor allem hilft es Ihnen, eine spezifischere und relevantere Antwort zu bekommen! " - DavidPostill♦


Antworten:


Da die StackOverflow-Antwort so abstrakt und OS-agnostisch ist, dass sie für die spezifische Frage des Operators nutzlos ist, poste ich eine Windows-spezifische Antwort.

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

Ein Thema ist ein Strom von sequentiellen Maschinencodeanweisungen, die der Prozessor ausführt. Mit Ausnahme von Interrupts, wenn die CPU eine Anweisung im Auftrag einer Anwendung ausführt, geschieht dies, weil ein Thread sie enthielt. Threads innerhalb eines Prozesses können auf den Prozessspeicher zugreifen (insofern, als die spezifische Operation auf dem Speicherelement "thread-safe" ist und nicht nicht abgestimmt angezeigt wird Nebenläufigkeit Probleme, wenn mehr als ein Thread gleichzeitig ausgeführt wird). Eine Anwendung kann ihre Operation beschleunigen, indem sie mehrere Threads verwendet, die jeweils eine isolierte Task ausführen, indem sie ihren Befehlsstrom über eine andere CPU ausführen Ausführungseinheit (CPU / Kern / virtueller Kern) gleichzeitig. https://en.wikipedia.org/wiki/Thread_%28computing%29

Ein Griff ist eine logische Verknüpfung mit einer freigegebenen Ressource wie einer Datei, einem Fenster, einem Speicherort usw. Wenn ein Thread eine Datei öffnet, wird ein "Handle" für die Datei eingerichtet, und intern fungiert sie als "Name" für diese Instanz des Datei. Handles werden verwendet, um auf vorübergehende oder Umweltressourcen außerhalb der Speicherstruktur des Prozesses zu verweisen. EIN Griff Leck ist eine Art von Softwareproblem, das im Extremfall ein System destabilisieren kann. Es wird von einem Programm verursacht, das ein Handle für eine Ressource anfordert, und es kann nicht freigegeben werden, wenn das Programm mit der Ressource fertig ist. Aufgrund Ihrer Nummer sehe ich jedoch nichts falsch. https://en.wikipedia.org/wiki/Handle_%28computing%29


11
2018-04-15 14:24



Danke Frank, das war sehr einfach und hilfreich. Ich versuche, den Zusammenbruch der Berechnungen zu verstehen, damit ich in die richtige Richtung gehe. - JohnNg