异常性能计数器

性能控制台 .NET CLR Exceptions(异常)类别包括一些计数器,这些计数器提供与应用程序引发的异常有关的信息。 下表描述这些性能计数器。

性能计数器

说明

# of Exceps Thrown(引发的异常数)

显示自应用程序启动后引发的异常的总数。 它包括 .NET 异常和转换成 .NET 异常的非托管异常。 例如,从非托管代码返回的 HRESULT 转换为托管代码中的异常。

此计数器包括已处理和未经处理的异常。 重新引发的异常被再次计算。

# of Exceps Thrown / Sec(引发的异常数/秒)

显示每秒引发的异常的数目。 它包括 .NET 异常和转换成 .NET 异常的非托管异常。 例如,从非托管代码返回的 HRESULT 转换为托管代码中的异常。

此计数器包括已处理和未经处理的异常。 此计数器不是一段时间内的平均值;它显示在最后两个样本(以取样间隔持续时间来划分)中观察到的值之间的差异。 此计数器是一个潜在性能问题(如果引发多于 100 个的较多数目的异常)的指示器。

# of Filters / Sec(筛选器数/秒)

显示每秒执行的 .NET 异常筛选器的数目。 无论是否处理异常,异常筛选器都将进行计算。

此计数器不是一段时间内的平均值;它显示最近两个样本中观测的值的差除以取样间隔时间所得的结果。

# of Finallys / Sec(finally 块数/秒)

显示每秒执行的 finally 块的数目。 无论 try 块是已何种方式退出的,都确保执行 finally 块。 只对针对异常执行的 finally 块计数;此计数器不对按照正常代码路径执行的 finally 块计数。

此计数器不是一段时间内的平均值;它显示最近两个样本中观测的值的差除以取样间隔时间所得的结果。

Throw to Catch Depth / Sec(引发到捕捉深度/秒)

显示每秒遍历的堆栈帧(从引发异常的帧到处理该异常的帧)的数目。 当进入异常处理程序时此计数器重置为零,因此嵌套的异常显示处理程序到处理程序堆栈深度。

此计数器不是一段时间内的平均值;它显示最近两个样本中观测的值的差除以取样间隔时间所得的结果。

请参见

参考

运行时分析

概念

处理和引发异常

其他资源

.NET Framework 中的性能计数器