Asignar métodos en la pila de llamadas durante la depuración en Visual Studio
Cree un mapa de código para hacer un seguimiento visual de la pila de llamadas durante la depuración. Puede hacer anotaciones en el mapa para llevar a cabo el seguimiento de lo que hace el código y poder concentrarse en encontrar errores.
Necesitará:
Código que pueda depurar, por ejemplo, Visual C# .NET, Visual Basic .NET, C++ y JavaScript. Para visualizar código que se comparte entre varias aplicaciones en la misma solución o código X++ para Microsoft Dynamics AX, asegúrese de que dispone de Visual Studio 2013 Update 2 o posterior.
Vea: Vídeo: Depurar visualmente con la integración del depurador del mapa de código (Channel 9) • Map the call stack • Make notes about the code • Update the map with the next call stack • Add related code to the map • Find bugs using the map • Q & A
Asignar la pila de llamadas
Inicie la depuración. (Teclado: F5)
Cuando la aplicación entre en modo de interrupción o entre en una función, elija Mapa de código. (Teclado: Ctrl + Mayús + `)
La pila de llamadas actual aparece en naranja en un nuevo mapa de código:
El mapa se actualiza automáticamente a la vez que continúa depurando. Vea Update the map with the next call stack.
Hacer notas sobre el código
Agregue comentarios para el hacer seguimiento de lo que pasa en el código. Para agregar una nueva línea a un comentario, presione Mayús + Entrar.
Actualizar el mapa con la siguiente pila de llamadas
Ejecute la aplicación hasta el siguiente punto de interrupción o entre en una función. El mapa agrega una nueva pila de llamadas.
Agregar código relacionado al mapa
Ahora ya tiene un mapa, ¿qué viene después? Si trabaja con Visual C# .NET o Visual Basic .NET, agregue elementos, como campos, propiedades y otros métodos, para hacer el seguimiento de lo que pasa en el código.
Haga doble clic en un método para ver su definición de código. (Teclado: Seleccione el método en el mapa y presione F12).
Agregue los elementos de los que desee realizar el seguimiento al mapa.
Aquí puede ver fácilmente los métodos que utilizan los mismos campos. Los elementos agregados más recientemente aparecen en verde.
Continúe con la compilación del mapa para ver más código.
Buscar errores usando el mapa
La visualización del código puede ayudarle a encontrar errores con mayor rapidez. Por ejemplo, suponga que está investigando un error en un programa de dibujo. Cuando dibuja una línea e intenta deshacerla, no sucede nada hasta que dibuja otra línea.
Por tanto, establece los puntos de interrupción, inicia la depuración y compila un mapa como este:
Observe que todos los gestos de usuario en el mapa llaman a Repaint, salvo undo. Esto podría explicar por qué undo no funciona inmediatamente.
Tras corregir el error y seguir ejecutando el programa, el mapa agrega la nueva llamada de undo a Repaint:
Preguntas y respuestas
No todas las llamadas aparecen en el mapa. ¿Por qué?
De forma predeterminada, en el mapa solo se muestra su código. Para ver código externo, actívelo en la ventana Pila de llamadas o desactive Habilitar Solo mi código en las opciones de depuración de Visual Studio.
¿Afecta el cambio del mapa al código?
Cambiar el mapa no afecta al código en forma alguna. No dude en cambiar el nombre, mover o quitar contenido del mapa.
¿Qué significa este mensaje: “El diagrama se puede basar en una versión anterior del código”?
El código podría haber cambiado después de la última actualización del mapa. Por ejemplo, una llamada en el mapa tal vez ya no exista en el código. Cierre el mensaje y, a continuación, intente volver a compilar la solución antes de actualizar el mapa de nuevo.
¿Cómo puedo controlar el diseño del mapa?
Abra el menú Diseño de la barra de herramientas del mapa:
Cambie el diseño predeterminado.
Para que el mapa deje de reorganizarse automáticamente, desactive la opción Diseñar automáticamente al depurar.
Para reorganizar el mapa lo mínimo posible cuando se agregan elementos, desactive Diseño incremental.
¿Es posible compartir el mapa con otros usuarios?
Puede exportar el mapa, enviarlo a otros usuarios si tiene Microsoft Outlook o guardarlo en la solución para protegerlo en el control de versiones de Team Foundation.
¿Cómo se detiene la agregación automática de nuevas pilas de llamadas al mapa?
En la barra de herramientas del mapa, elija . Para agregar manualmente la pila de llamadas actual al mapa, presione Ctrl + Mayús + `.
El mapa continuará resaltando las pilas de llamadas existentes mientras se está depurando.
¿Qué significan los iconos y las flechas de los elementos?
Para obtener más información acerca de un elemento, consulte la información sobre herramientas del elemento. También puede ver la Leyenda para saber el significado de cada icono.
Vea: Map the call stack • Make notes about the code • Update the map with the next call stack • Add related code to the map • Find bugs using the map