Escolher uma estratégia de implementação do mecanismo de depuração

Use a arquitetura de tempo de execução para determinar sua estratégia de implementação do mecanismo de depuração (DE). Você pode criar o mecanismo de depuração em processo para o programa que está depurando. Crie o mecanismo de depuração em processo para o gerenciador de depuração de sessão (SDM) do Visual Studio. Ou, crie o mecanismo de depuração fora do processo para ambos. As diretrizes a seguir devem ajudá-lo a escolher entre essas três estratégias.

Diretrizes

Embora seja possível que o DE esteja fora do processo para o SDM e o programa que você está depurando, normalmente não há razão para fazer isso. As chamadas entre os limites do processo são relativamente lentas.

Os mecanismos de depuração já são fornecidos para o ambiente de tempo de execução nativo do Win32 e para o ambiente de tempo de execução de linguagem comum. Se você precisar substituir o DE para qualquer ambiente, deverá criar o DE em processo com o SDM.

Caso contrário, você cria o DE em processo para o SDM ou em processo para o programa que você está depurando. Você precisará considerar se o avaliador de expressão do DE requer acesso frequente ao repositório de símbolos do programa. Ou, se o armazenamento de símbolos pode ser carregado na memória para acesso rápido. Além disso, considere as seguintes abordagens:

  • Se não houver muitas chamadas entre o avaliador de expressão e o repositório de símbolos, ou se o repositório de símbolos puder ser lido no espaço de memória do SDM, crie o DE em processo para o SDM. Você deve retornar o CLSID do mecanismo de depuração para o SDM quando ele for anexado ao seu programa. O SDM usa esse CLSID para criar uma instância em processo do DE.

  • Se o DE deve chamar o programa para acessar o repositório de símbolos, crie o DE em processo com o programa. Nesse caso, o programa cria a instância do DE.