例外狀況效能計數器

效能主控台 .NET CLR Exceptions 分類包含了提供應用程式擲回之例外狀況的相關資訊。 下表描述的是這些效能計數器。

效能計數器

說明

# of Exceps Thrown

顯示自應用程式啟動後擲回的例外狀況總數。 這包含了 .NET 例外狀況和轉換為 .NET 例外狀況的 Unmanaged 例外狀況。 例如,從 Unmanaged 程式碼傳回的 HRESULT 會轉換為 Managed 程式碼的例外狀況。

這個計數器同時包含已處理和未處理的例外狀況。 重新擲回的例外狀況會再次計數。

# of Exceps Thrown / Sec

顯示每秒擲回的例外狀況數目。 這包含了 .NET 例外狀況和轉換為 .NET 例外狀況的 Unmanaged 例外狀況。 例如,從 Unmanaged 程式碼傳回的 HRESULT 會轉換為 Managed 程式碼的例外狀況。

這個計數器同時包含已處理和未處理的例外狀況。 這不是累積時間下的平均數;它會顯示最後兩個樣本中觀察的值之間的差異除以樣本間隔的持續期間。 如果擲回大量 (>100s) 的例外狀況,這個計數器是個有潛在效能問題的指示器 (Indicator)。

# of Filters / Sec

顯示每秒執行的 .NET 例外狀況篩選器數目。 不論例外狀況是否經過處理,例外狀況篩選器都會評估。

這個計數器不是依據時間的平均值; 它是顯示所觀察到,由取樣間隔持續期間所區隔的最後兩個樣本之間的差異。

# of Finallys / Sec

顯示每秒執行的 Finally 區塊的數目。 finally 區塊是不論 try 區塊如何被結束都保證會被執行的區塊。不過只會計算針對例外狀況所執行的 Finally 區塊數;這個計數器並不會計算一般程式碼路徑中的 Finally 區塊數。

這個計數器不是依據時間的平均值; 它是顯示所觀察到,由取樣間隔持續期間所區隔的最後兩個樣本之間的差異。

Throw to Catch Depth / Sec

顯示每秒周遊的堆疊框架 (從擲回例外狀況的框架至處理例外狀況的框架) 數目。 進入例外處理常式 (Exception Handler) 時,這個計數器會重設為零,因此巢狀例外狀況會顯示處理常式至處理常式的堆疊深度。

這個計數器不是依據時間的平均值; 它是顯示所觀察到,由取樣間隔持續期間所區隔的最後兩個樣本之間的差異。

請參閱

參考

執行階段分析

其他資源

.NET Framework 中的效能計數器

處理和擲回例外狀況