Eventos

El motor del depurador proporciona instalaciones para supervisar y responder a eventos en el destino. Cuando se produce un evento, el motor suspende el destino (a menudo solo brevemente), notifica a todos los clientes del evento, que a su vez indican al motor cómo debe continuar la ejecución en el destino.

Para notificar a un cliente de un evento, el motor llama al objeto de devolución de llamada de evento registrado con el cliente. El motor proporciona cada devolución de llamada de evento con detalles del evento y la devolución de llamada del evento indica al motor cómo debe continuar la ejecución en el destino. Cuando las devoluciones de llamada de eventos diferentes proporcionan instrucciones en conflicto, el motor actúa en la instrucción con la prioridad más alta (vea DEBUG_STATUS_XXX), lo que normalmente significa elegir la instrucción que implica la menor ejecución del destino.

Nota Mientras la devolución de llamada de eventos controla el evento, se suspende el destino y se puede acceder a la sesión de depuración; Sin embargo, dado que el motor estaba esperando un evento, ya sea explícitamente durante una llamada WaitForEvent o implícitamente ejecutando un comando como g (Go) o p (Paso), la devolución de llamada de evento no puede llamar a WaitForEvent y si intenta ejecutar comandos que harían que el depurador se ejecutara, por ejemplo, g (Go) o p (Paso), el motor interpretará estos comandos como una instrucción sobre cómo continuar.

Filtros de eventos

El motor del depurador también proporciona filtros de eventos, que son una alternativa más sencilla para la supervisión de eventos básica. Los filtros de eventos proporcionan algunas reglas sencillas que especifican si se debe imprimir un evento en el flujo de salida del depurador o dividirse en el depurador. También se pueden usar para ejecutar comandos del depurador cuando se produce un evento.

Información adicional

Para obtener más información sobre los eventos de supervisión, consulte Supervisión de eventos.