Método de ICorDebugManagedCallback2::MDANotification
Fornece notificação de que a execução de código encontrou um Assistente de depuração gerenciada (MDA) no aplicativo que está sendo depurado.
HRESULT MDANotification(
[in] ICorDebugController *pController,
[in] ICorDebugThread *pThread,
[in] ICorDebugMDA *pMDA
);
Parâmetros
pController
[in] Um ponteiro para um ICorDebugController interface expõe o processo ou domínio de aplicativo no qual o MDA ocorreu.Um depurador não deve fazer suposições sobre se o controlador é um processo ou um domínio de aplicativo, embora ele pode sempre consultar a interface para tomar uma decisão.
pThread
[in] Um ponteiro para um ICorDebugThread interface expõe o thread gerenciado no qual ocorreu o evento de depuração.Se o MDA ocorreu em um não-gerenciado thread, o valor de pThread será null.
Você deve obter a identificação de thread do sistema operacional (SO) do próprio objeto MDA.
pMDA
[in] Um ponteiro para um ICorDebugMDA interface expõe as informações do MDA.
Comentários
Um MDA é um aviso de heurística e não requer nenhuma ação explícita do depurador, exceto para as chamadas ICorDebugController::Continue para continuar a execução do aplicativo que está sendo depurado.
O common language runtime (CLR) pode determinar qual MDAs são acionados e quais dados estão em qualquer MDA determinado em qualquer ponto. Portanto, os depuradores não deverá criar qualquer funcionalidade que exigem padrões específicos de MDA.
MDAs podem ser colocados em fila e acionados logo após o MDA é encontrado. Isso pode acontecer se o runtime deve aguardar até que ele atingir o ponto seguro para acionar o MDA, em vez de disparar o MDA quando ele encontra. Isso também significa que o runtime pode disparar um número de MDAs em um único conjunto de retornos de chamada na fila (semelhante a um "anexar" operação do evento).
Um depurador deve liberar a referência a uma ICorDebugMDA instância imediatamente após retornar da MDANotification o retorno de chamada, para permitir que o CLR reciclar a memória consumida por um MDA. Liberação da instância pode melhorar o desempenho se MDAs muitos estão disparando.
Requisitos
Plataformas: Consulte Requisitos de sistema do .NET Framework.
Cabeçalho: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0
Consulte também
Referência
Interface de ICorDebugManagedCallback2
Interface de ICorDebugManagedCallback