|
前幾天,有一個朋友問我為什么在.NET里不能捕捉(catch)到一些異常了,而且在調(diào)試器里也捕捉不到。研究了一下,是.NET 4.0里新的異常處理機制搗的鬼。
在.NET 4.0之后,CLR將會區(qū)別出一些異常(都是SEH異常),將這些異常標識為破壞性異常(Corrupted State Exception)。針對這些異常,CLR的catch塊不會捕捉這些異常,即使你用類似下面的代碼:
try
{
TestMethod();
}
catch (Exception e)
{
Console.WriteLine("Catching exception: {0}", e);
}
NET技術(shù):.NET 4.0里異常處理的新機制,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。