0

每当我们分析挂起转储时,如果我们尝试 .exr -1,

可以看到以下结果。

异常地址:000000 异常代码:cfffffff(应用程序挂起)

.exr -1 表示“最后抛出的异常”。

应用程序挂起时谁在抛出异常。通常,在发生崩溃的情况下,系统会抛出异常,并且 KiUserDispatch... 会捕获它并继续。

但是当发生挂起时会发生什么?系统是否抛出异常?异常记录从何而来?

4

1 回答 1

0

应用程序挂起不会产生任何异常,因此您必须检查所有线程的调用堆栈并尝试找出“谁在等待谁”</p>

以下命令可以帮助您:

a) 检查所有堆栈

~*e ?? @$tid;kvn 

b)列出与所有者堆栈锁定的关键部分

!cs –l -o

您也可以尝试 DebugDiag 进行崩溃/挂起分析

于 2013-10-25T16:47:04.580 回答