Eventos

O mecanismo de depurador fornece instalações para monitorar e responder a eventos no destino. Quando ocorre um evento, o mecanismo suspende o destino (geralmente apenas brevemente), ele notifica todos os clientes do evento, que por sua vez instruem o mecanismo sobre como a execução deve continuar no destino.

Para notificar um cliente de um evento, o mecanismo chama o objeto de retorno de chamada de evento registrado com o cliente. O mecanismo fornece a cada retorno de chamada de evento detalhes do evento e o retorno de chamada do evento instrui o mecanismo sobre como a execução deve continuar no destino. Quando diferentes retornos de chamada de evento fornecem instruções conflitantes, o mecanismo atua na instrução com a precedência mais alta (consulte DEBUG_STATUS_XXX), o que normalmente significa escolher a instrução que envolve a menor execução do destino.

Nota Enquanto o retorno de chamada do evento está tratando o evento, o destino é suspenso e a sessão de depuração é acessível; no entanto, como o mecanismo estava aguardando um evento , explicitamente durante uma chamada WaitForEvent ou implicitamente executando um comando como g (Go) ou p (Step)-- o retorno de chamada de evento não pode chamar WaitForEvent e, se ele tentar executar quaisquer comandos que fariam com que o depurador fosse executado, por exemplo , g (Go) ou p (Etapa), o mecanismo interpretará esses comandos como uma instrução sobre como proceder.

Filtros de evento

O mecanismo de depurador também fornece filtros de evento, que são uma alternativa mais simples para o monitoramento de eventos básico. Os filtros de evento fornecem algumas regras simples que especificam se um evento deve ser impresso no fluxo de saída do depurador ou invadir o depurador. Eles também podem ser usados para executar comandos de depurador quando ocorre um evento.

Informações adicionais

Para obter detalhes sobre eventos de monitoramento, consulte Eventos de monitoramento.