Compartilhar via


Pontos de interrupção

O mecanismo de depurador pode criar e monitorar pontos de interrupção no destino.

Há dois tipos de pontos de interrupção que o mecanismo pode inserir em um destino: pontos de interrupção de software e pontos de interrupção do processador.

  • Os pontos de interrupção de software são inseridos no código do destino modificando a instrução do processador no local do ponto de interrupção. O mecanismo do depurador controla esses pontos de interrupção; eles são invisíveis para os clientes que leem e gravam memória nesse local. Um ponto de interrupção de software é disparado quando o destino executa a instrução modificada.

  • Os pontos de interrupção do processador são inseridos no processador do destino pelo mecanismo do depurador. Um ponto de interrupção do processador pode ser disparado por ações diferentes, por exemplo, executando uma instrução no local (como pontos de interrupção de software) ou lendo ou gravando memória no local do ponto de interrupção. O suporte para pontos de interrupção do processador depende do processador no computador de destino.

O endereço de um ponto de interrupção pode ser especificado por um endereço explícito, por uma expressão que é avaliada como um endereço ou por uma expressão que pode ser avaliada como um endereço em um momento futuro. No último caso, sempre que um módulo for carregado ou descarregado no destino, o mecanismo tentará reavaliar a expressão e inserir o ponto de interrupção se puder determinar o endereço; isso possibilita definir pontos de interrupção em módulos antes de serem carregados.

Vários parâmetros podem ser associados a um ponto de interrupção para controlar seu comportamento:

  • Um ponto de interrupção pode ser associado a um thread específico no destino e só será disparado por esse thread.

  • Um ponto de interrupção pode ter comandos de depurador associados a ele; esses comandos serão executados automaticamente quando o ponto de interrupção for disparado.

  • Um ponto de interrupção pode ser sinalizado como inativo até que o destino tenha passado um número especificado de vezes.

  • Um ponto de interrupção pode ser removido automaticamente na primeira vez em que é disparado.

Informações adicionais

Para obter detalhes sobre como usar pontos de interrupção, consulte Usando pontos de interrupção.