ICorProfilerCallback::ExceptionCatcherEnter (Método)
Notifica al generador de perfiles de que se va a pasar el control al bloque catch
adecuado.
Sintaxis
HRESULT ExceptionCatcherEnter(
[in] FunctionID functionId,
[in] ObjectID objectId);
Parámetros
functionId
[in] Identificador de la función que contiene el bloque catch
.
objectId
[in] Identificador de la excepción que se está controlando.
Observaciones
Solo se llama al método ExceptionCatcherEnter
si el punto catch está en el código compilado con el compilador Just-In-Time (JIT). Una excepción que se detecta en código no administrado o en el código interno del tiempo de ejecución no llamará a esta notificación. El valor objectId
se pasa de nuevo, ya que una recolección de elementos no utilizados podría haber movido el objeto desde la notificación ExceptionThrown
.
El generador de perfiles no debe bloquearse durante la implementación de este método, ya que es posible que el estado de la pila no permita los procesos de recolección de elementos no utilizados y, por tanto, no se puedan habilitar los procesos preventivos de recolección de elementos no utilizados. Si el generador de perfiles se bloquea en este momento y se intenta realizar un proceso de recolección de elementos no utilizados, el tiempo de ejecución se bloqueará hasta que se devuelva esta devolución de llamada.
Además, mientras se esté realizando la implementación de este método en el generador de perfiles, este último no deberá usarse para realizar llamadas a código administrado ni para provocar una asignación de memoria administrada de ninguna manera.
Requisitos
Plataformas: Vea Requisitos de sistema.
Encabezado: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
Versiones de .NET Framework: disponible a partir de la versión 2.0