2012-09-11 31 views
1

我知道命令!dumpheap型異常會顯示所有例外情況然而,在目前,我試圖調試它的應用程序如下圖所示WinDBG的獲得時間異常發生

.foreach (ex {!dumpheap -type Exception -short}){.echo "********";!pe ${ex} } 

好像有連帶效應發生在一個異常觸發了多個線程中的29個其他異常的情況下。有什麼方法可以確定哪個是第一個發生的異常?

+0

I *相信第一個*的對象在堆中的順序及其分配順序一致(因爲分配總是發生在自由端,我理解壓縮只是將所有東西都轉移到較低的地址),但我認爲這不是保證。 –

+0

更具體地說,它將顯示所有類型的實例,其名稱中包含單詞Exception。該命令本身並不知道實際的例外情況。 –

回答

1

我一直都面臨這種困惑。 但是在所有情況下,具有更高內存地址的異常都是最後一次發生。

因此與最低的內存地址以外的所有這29個例外是發生

See the sample shown below