0

J'utilise un outil tiers, qui utilise un plugin 4ème partie. Parfois, l'outil se bloque lorsqu'il est lancé. En regardant les traces de la pile, je peux voir que quelques threads attendent sur WaitForSingleObject, et je parie qu'ils se bloquent les uns les autres. Certains des threads commencent à l'outil de partie 3rt, et certains au plugin 4ème partie. Ce que je voudrais faire est de déposer la plainte la plus détaillée au fournisseur d'outil tiers, en supposant que c'est sa faute (je ne fais pas confiance à leur support local pour obtenir ces détails eux-mêmes). Pour cela, je voudrais:Reconnaissance d'un objet de synchronisation suspendu à deux exécutables tiers

  1. Découvrez quels sont les objets de synchronisation actuellement attendu sur
  2. Découvrez qui a créé les objets de synchronisation

outils actuellement à la main sont VS2005, WinDbg et Process Explorer. OS est Window 7 64 bits. Aucune suggestion?

Répondre

1

Je suis habitué à WinDBG, donc je peux vous donner quelques petites choses à essayer. Tout d'abord est d'obtenir vos symboles droite:

.symfix c: \ websymbols .reload

Et la profondeur de votre cadre de pile coudés:

.kframes 1000

J'irais pour ! uniqstack, ce qui permettra d'éliminer les piles en double et vous faire gagner du temps:

uniqstack -b

Ensuite, il est am à travers de chercher et de trouver la dépendance circulaire. Malheureusement difficile de donner beaucoup de conseils sans plus d'informations sur le blocage. Vous pouvez également essayer! Locks pour voir si cela se trouve pour vous (ne va aider que pour les blocages de la section critique). Déterminer quels sont les objets de synchronisation qu'il attend est beaucoup plus facile à partir d'une session de débogage du noyau, du mode utilisateur, vous aurez besoin de traquer les poignées et de faire un! Handle sur chacune d'entre elles. Est-ce que l'exe 32 bits ou 64 bits?

Pour déterminer qui a créé les objets, il est préférable d'activer le suivi des poignées via! Htrace, d'exécuter le scénario, puis de vider la trace.

Bonne chance,

-Scott