Elección de una estrategia de implementación del motor de depuración

Use la arquitectura en tiempo de ejecución para determinar la estrategia de implementación del motor de depuración (DE). Puede crear el motor de depuración en proceso para el programa que está depurando. Cree el motor de depuración en proceso en el administrador de depuración de sesión (SDM) de Visual Studio. O bien, cree el motor de depuración fuera de proceso para ambos. Las siguientes directrices deben ayudarle a elegir entre estas tres estrategias.

Directrices

Aunque es posible que el DE no sea de proceso tanto para el SDM como para el programa que está depurando, normalmente no hay ninguna razón para hacerlo. Las llamadas a través de los límites del proceso son relativamente lentas.

Los motores de depuración ya se proporcionan para el entorno en tiempo de ejecución nativo de Win32 y para el entorno en tiempo de ejecución de Common Language. Si tiene que reemplazar el DE para cualquiera de los entornos, debe crear el DE en proceso con el SDM.

De lo contrario, puede crear el DE en proceso en el SDM o en proceso para el programa que está depurando. Deberá tener en cuenta si el evaluador de expresiones del DE requiere acceso frecuente al almacén de símbolos del programa. O bien, si el almacén de símbolos se puede cargar en la memoria para un acceso rápido. Además, tenga en cuenta los siguientes enfoques:

  • Si no hay muchas llamadas entre el evaluador de expresiones y el almacén de símbolos, o si el almacén de símbolos se puede leer en el espacio de memoria SDM, cree el DE en proceso en el SDM. Debe devolver el CLSID del motor de depuración al SDM cuando se asocia al programa. El SDM usa este CLSID para crear una instancia en proceso del DE.

  • Si el DE debe llamar al programa para acceder al almacén de símbolos, cree el DE en proceso con el programa. En este caso, el programa crea la instancia del DE.