gh (Ir com exceção tratada)

O comando gh marca a exceção do thread fornecido como tendo sido tratada e permite que o thread reinicie a execução na instrução que causou a exceção.

Sintaxe User-Mode

[~Thread] gh[a] [= StartAddress] [BreakAddress ... [; BreakCommands]] 

Sintaxe Kernel-Mode

gh[a] [= StartAddress] [BreakAddress ... [; BreakCommands]] 

Parâmetros

Thread
(Somente modo de usuário) Especifica o thread a ser executado. Esse thread deve ter sido interrompido por uma exceção. Para obter detalhes de sintaxe, consulte Sintaxe de thread.

Um
Faz com que qualquer ponto de interrupção criado por esse comando seja um ponto de interrupção do processador (como aqueles criados por ba) em vez de um ponto de interrupção de software (como aqueles criados por bp e bm). Se BreakAddress não for especificado, nenhum ponto de interrupção será criado e o sinalizador não terá efeito.

Startaddress
Especifica o endereço no qual a execução deve começar. Se isso não for especificado, o depurador passará a execução para o endereço em que a exceção ocorreu. Para obter mais detalhes de sintaxe, consulte Sintaxe do intervalo de endereços e endereços.

BreakAddress
Especifica o endereço de um ponto de interrupção. Se BreakAddress for especificado, ele deverá especificar um endereço de instrução (ou seja, o endereço deve conter o primeiro byte de uma instrução). Até dez endereços de interrupção, em qualquer ordem, podem ser especificados ao mesmo tempo. Se BreakAddress não puder ser resolvido, ele será armazenado como um ponto de interrupção não resolvido. Para obter mais detalhes de sintaxe, consulte Sintaxe do intervalo de endereços e endereços.

BreakCommands
Especifica um ou mais comandos a serem executados automaticamente quando o ponto de interrupção especificado por BreakAddress for atingido. O parâmetro BreakCommands deve ser precedido por um ponto e vírgula. Se vários valores BreakAddress forem especificados , BreakCommands se aplicará a todos eles.

Nota O parâmetro BreakCommands só estará disponível quando você estiver inserindo esse comando em uma cadeia de caracteres de comando usada por outro comando , por exemplo, em outro comando de ponto de interrupção ou dentro de uma configuração de evento ou exceto. Em uma linha de comando, o ponto e vírgula encerrará o comando gh e todos os comandos adicionais listados após o ponto e vírgula serão executados imediatamente após a conclusão do comando gh .

Ambiente

Item Descrição
Modos modo de usuário, modo kernel
Destinos somente depuração dinâmica
Plataformas all

Informações adicionais

Para outros métodos de emissão desse comando e uma visão geral dos comandos relacionados, consulte Controlando o destino.

Comentários

Se você usar o parâmetro BreakAddress para definir um ponto de interrupção, esse novo ponto de interrupção só será disparado pelo thread atual. Outros threads que executam o código nesse local não serão interrompidos.

Se Thread for especificado, o comando gh será executado com o thread especificado descongelado e todos os outros congelados. Por exemplo, se o comando ~123gh, ~#gh ou ~*gh for especificado, os threads especificados serão descongelados e todos os outros serão congelados.