Trotz der Einfachheit eines Testprogramms mit einem einzigen Hauptthread initiiert Windows 10 unerwartet mehrere zusätzliche Threads. Dieses Problem wirft die Frage auf, wer oder wie diese Threads initiiert werden.
Identifizierung der Threads
Der Debug > Windows > Das Fenster „Threads“ zeigt das Vorhandensein dieser Threads unter ntdll.dll!TppWorkerThread an. Dies sind Thread-Pool-Threads, wie aus dem Festlegen eines Haltepunkts für die Funktion TppWorkerThread() hervorgeht.
Ursache: DLL-Laden
Der Stack-Trace für den ersten Threadpool Wenn der Thread mit der Ausführung des zweiten Threadpool-Threads beginnt, wird angezeigt, dass der Loader den Threadpool aufruft, um DLLs zu laden. Dies ist eine bemerkenswerte Änderung gegenüber Windows 7, wo DLLs ohne Verwendung des Threadpools geladen wurden.
Windows 10-Optimierung
Windows 10 nutzt mehrere Kerne, um die Prozessinitialisierung durch Nutzung zu beschleunigen Der Threadpool zum Laden der DLL. Dieser Parallelitätsmechanismus verbessert die Leistung und wird nicht als Fehler betrachtet, sondern eher als Funktion zur Nutzung moderner Hardwarefunktionen.
Das obige ist der detaillierte Inhalt vonWarum erstellt Windows 10 beim Ausführen eines einfachen Programms zusätzliche Threads?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!