我的应用程序挂起,windbg转储分析显示所有线程都处于挂起/解冻状态。这是什么意思?

时间:2012-02-08 14:03:56

标签: debugging windbg adplus

我的outlook addin应用程序挂起,windbg挂起转储分析显示所有线程都处于挂起/解冻状态。事件查看器和进程监视器中的错误显示数百个注册表查找失败和磁盘访问失败。线程的暂停/解冻状态意味着什么?

1 个答案:

答案 0 :(得分:2)

如果您从“索引”选项卡下的“〜(线程状态)命令”中查找“控制进程和线程”链接,WinDBG的F1帮助会更详细地解释以下内容。 还有MSDN link

所以首先冻结没有任何意义,除非您连接了调试器,因此只有调试器才能冻结或解冻线程。

挂起的线程有一个挂起计数,这样当计数转到0时,如果适当的话,继续执行该线程的执行,大于0将挂起该线程。

通常,当您附加调试器时,它会将每个线程的挂起计数增加1,因为您正在有条不紊地调试应用程序或者已经达到了断点。

当你附加调试器并且遇到断点时,冻结/解冻状态只有意义,暂停/取消挂起是应用程序运行时每个线程的挂起计数。

希望这有帮助。