2009-06-24 6 views
2

Utilisation de ADPlus (en mode de vidage sur incident) pour générer des fichiers .dmp. La séquence finale des exceptions non gérées (qui produisent des fichiers de vidage mémoire complets) est ...ID de thread Windbg après StackOverflow et arrêt du processus

1ère chance Déchargement DLL: contient des identifiants de threads, mais ne contient pas le StackOverflowException (je ne m'attendrais pas à cela à ce stade le exception n'a pas encore été lancée).

Première chance Stackoverflow: contient des identifiants de threads mais ne contient pas l'exception StackOverflowException. 1ère chance Process Shut Down (arrêt): contient l'exception StackOverflowException mais ne contient pas les identifiants de threads.

???

Existe-t-il un moyen, en configurant ADPlus ou en exécutant des commandes dans Windbg, de capturer l'exception et d'avoir accès aux identifiants de threads?

En réponse à Magnus, existe-t-il des informations utiles si l'ID de thread n'est pas disponible? Running! Threads renvoie des informations, mais sans l'identificateur de thread et l'exception, il ne semble y avoir nulle part ailleurs où aller. Courir! Clrstack semble plus utile que d'exécuter! Threads, dans ce cas.

Répondre

0

Avez-vous essayé la commande ! Fil dans WinDbg pendant le débogage post-mortem de votre décharge fichier?

0

Ouvrir la deuxième décharge et entrez la commande .ecxr [Entrée]
maintenant esp dds [enter]
Pour continuer à voir callstack il suffit d'écrire dds [Entrée]
[Entrée]. ... [entrée] ....

Vous trouverez probablement que ce thread était en cours d'appel de la DLL déchargée.

Questions connexes