Método ICorDebugController::Stop
Executa uma parada cooperativa em todos os threads que estão executando o código gerenciado no processo.
Sintaxe
HRESULT Stop (
[in] DWORD dwTimeoutIgnored
);
Parâmetros
dwTimeoutIgnored
Não usado.
Comentários
Stop
executa uma parada cooperativa em todos os threads que estão executando o código gerenciado no processo. Durante uma sessão de depuração somente gerenciada, os threads não gerenciados podem continuar em execução (mas serão bloqueados ao tentar chamar o código gerenciado). Durante uma sessão de depuração de interoperabilidade, os threads não gerenciados também serão interrompidos. No momento, o dwTimeoutIgnored
valor é ignorado e tratado como INFINITE (-1). Se a parada cooperativa falhar devido a um deadlock, todos os threads serão suspensos e E_TIMEOUT será retornado.
Observação
Stop
é o único método síncrono na API de depuração. Quando Stop
retorna S_OK, o processo é interrompido. Nenhum retorno de chamada é fornecido para notificar os ouvintes da parada. O depurador deve chamar ICorDebugController::Continue para permitir que o processo seja retomado.
O depurador mantém um contador de parada. Quando o contador chegar a zero, o controlador será retomado. Cada chamada para Stop
ou cada retorno de chamada expedido incrementa o contador. Cada chamada para ICorDebugController::Continue
diminui o contador.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
Versões do .NET Framework: Disponíveis desde a versão 1.0