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.

Depuración con pilas de llamadas en los mapas de código

Necesitará:

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

  1. Inicie la depuración. (Teclado: F5)

  2. 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 + `)

    Elegir Mapa de código para empezar a asignar la pila de llamadas

    La pila de llamadas actual aparece en naranja en un nuevo mapa de código:

    Ver pila de llamadas en el 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.

Agregar comentario a la pila de llamadas en el mapa de código

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.

Actualizar mapa de código con la siguiente 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).

Ir a la definición de código de un método en el mapa de código

Agregue los elementos de los que desee realizar el seguimiento al mapa.

Mostrar campos en un método en el mapa de código de la pila de llamadas

Campos relacionados con un método en el mapa de código de la pila de llamadas

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.

Ver métodos que usan un campo: mapa de código de la pila de llamadas

Métodos que usan un campo en el mapa de código de la pila de llamadas

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:

Agregar otra pila de llamadas al mapa de código

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:

Agregar llamada a un nuevo método a la pila de llamadas en el mapa de código

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.

    Compartir el mapa de código de la pila de llamadas con otros usuarios

  • ¿Cómo se detiene la agregación automática de nuevas pilas de llamadas al mapa?

    En la barra de herramientas del mapa, elija Botón para mostrar pila de llamadas en mapa de código automáticamente. 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.

    ¿Qué significan los iconos del mapa de código de la pila de llamadas?

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