Hung-Prozess in Windows: Gibt es eine Möglichkeit zu sehen, warum?

13990
Nathan Fellman

Ich habe versucht, ein Dokument in Wort zu drucken, und das Wort ist eingefroren. Gibt es eine Möglichkeit für mich zu sehen, auf welche Ressource er wartet?

Ich verwende Windows XP und Word 2007 (obwohl ich mir vorstellen kann, dass die Antwort nicht von dem eingefrorenen Prozess abhängt)

11
Nathan, ich glaube, Sie haben doppelt gepostet: http://superuser.com/questions/10085/. James McMahon vor 15 Jahren 1
I did! How embarrassing! Nathan Fellman vor 15 Jahren 0

5 Antworten auf die Frage

12
James McMahon

Möglicherweise möchten Sie in Process Explorer nachsehen . Sie können sehen, für welche Dateien / Ordner Prozesse gesperrt sind.

Wenn Sie auf einen Prozess doppelklicken, können Sie sogar einzelne Threads und deren CPU-Auslastung sehen. itsadok vor 15 Jahren 0
Ein guter Vorschlag. Beachten Sie jedoch, dass Sie wissen, welche Objekte der Prozess geöffnet hat und nicht, worauf er wartet. Graeme Perrow vor 15 Jahren 1
12
Leftium

Dies erfordert ein wenig technisches Wissen, aber es ist möglich, Hänge mit dem (kostenlosen) Windows-Debugger WinDbg zu analysieren . Das Installieren, Anfügen an den Prozess und das Einrichten der Symbole erfordern einige Arbeit (sehr wichtig!). Sie können jedoch die Ursache für den Hang mit einem einzigen WinDbg-Befehl (Hervorhebung meines) feststellen:

-v -hang analysieren

Dies ist das, auf das ich vorher noch nicht gestoßen war. Führen Sie dies aus, nachdem Sie einen Dump aus einem blockierten Prozess geöffnet haben. Er bestimmt, welcher Thread für den Hang verantwortlich war und worauf er wartete. Ich wusste, dass Windbg Sie dazu befähigt hat, Handles zu untersuchen, alle Schlösser in jedem Thread offen zu zeigen und Sie alle im Detail untersuchen zu lassen. Aber ich habe nicht mitbekommen, dass windbg mit! Analysis die harte Arbeit für mich erledigen kann - die von allen Threads offengehaltenen Schlösser untersuchen, ermitteln, welche Threads auf welche anderen warten, und eine Reihenfolge aufbauen, für die ursprünglich verantwortlich war die hängen

Quelle

Das fortgeschrittene Windows-Debugging von Mario Hewardt, Daniel Pravat, ist ein sehr gutes Buch, um mit WinDbg zu beginnen: Die ersten paar Kapitel geben einen sehr detaillierten Überblick über Debugger und insbesondere die Verwendung von WinDbg. Der Rest des Buches enthält ausführliche Debugging-Fallstudien, die Sie nicht lesen müssen. Ich denke, es gibt eine Fallstudie, in der beschrieben wird, wie Sie einen Hang debuggen können, der jedoch für Sie von Interesse ist.

Nachdem Sie die Ursache für den Hang gefunden haben, können Sie ihn möglicherweise sogar mit fortschrittlicheren Debugging-Techniken entfernen ^^

Die erwähnte Fallstudie befindet sich in Kapitel 14 des Buchs, Abschnitt "!! Extension Command". Es enthält sehr detaillierte und nützliche Informationen zur Interpretation der WinDbg-Ausgabe. Claudiu vor 8 Jahren 0
0
Stefan Thyberg

Soweit ich weiß, gibt es das nicht. Sie könnten etwas wie Wireshark anschließen, um zu sehen, ob Sie etwas im Netzwerkverkehr finden könnten, um anzuzeigen, worauf es wartet, aber es ist ziemlich übertrieben und Sie werden wahrscheinlich kaum etwas finden.

0
nik

Seit dem Druck, den Sie versucht haben, frage ich mich, ob die Windows-Netzwerksuche aufgerufen wurde und Word nur darauf wartete, dass alle Netzwerkdrucker für eine Auswahl zugeordnet wurden.
Haben Sie einen lokal angeschlossenen Drucker? Befinden Sie sich in einer Unternehmensnetzwerkdomäne mit freigegebenen Druckern?

0
kpierce8

Sehen Sie sich die Prozess-Explorer-Videos " Der Fall des 200x" an, in denen der Autor mehrere Fehlerbehebungsszenarien einschließlich Hängen diagnostiziert. Hier kann auch der erzwungene Absturz von Strg-Bildlauf-Bildlauf-Sperren bei der Diagnose helfen.