Compartir a través de


ICorProfilerCallback::ExceptionCatcherEnter (Método)

Notifica al generador de perfiles que el control se va a pasar al bloque catch correspondiente.

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.

Comentarios

Se llama al método ExceptionCatcherEnter sólo si el punto de captura está en código compilado con el compilador Just-In-Time (JIT). Una excepción detectada en código no administrado o en el código interno del motor en tiempo de ejecución no llamará a esta notificación. Se volverá a pasar el valor de objectId, ya que la recolección de elementos no utilizados podría haber movido el objeto desde la notificación ExceptionThrown.

El generador de perfiles no se debe bloquear en su implementación de este método porque es posible que la pila no esté en un estado que permita la recopilación de elementos no utilizados y, por lo tanto, no se pueda habilitar la recopilación de elementos no utilizados preferente. Si el generador de perfiles se bloquea en este punto y se intenta la recopilación de elementos no utilizados, el motor en tiempo de ejecución se bloqueará hasta que se devuelva esta devolución de llamada.

La implementación del generador de perfiles de este método no debe llamar al código administrado ni en modo alguno provocar una asignación de memoria administrada.

Requisitos

Plataformas: vea Requisitos de sistema de .NET Framework.

Encabezado: CorProf.idl, CorProf.h

Biblioteca: CorGuids.lib

Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vea también

Referencia

ICorProfilerCallback (Interfaz)

ICorProfilerCallback::ExceptionCatcherLeave (Método)