Los puntos de interrupción constituyen una de las técnicas de depuración más importantes en los cuadros de herramientas de los desarrolladores. Puedes establecer puntos de interrupción donde quieras pausar la ejecución del depurador. Por ejemplo, es posible que desee ver el estado de las variables de código o examinar la pila de llamadas en un determinado punto de interrupción.
Al depurar, la ejecución se detiene en el punto de interrupción, antes de que se ejecute el código de esa línea. Cuando el depurador se detiene en el punto de interrupción, se puede consultar el estado actual de la aplicación, incluidos los valores de variable y la pila de llamadas.
Qué es un punto de interrupción
Un punto de interrupción es una línea de código en la que se desea detener temporalmente la ejecución del programa para inspeccionar su estado. Esta pausa permite analizar los valores de las variables, comprobar el flujo del programa y examinar la pila de llamadas.
Por ejemplo, eche un vistazo a este sencillo código de C# que crea un bucle simple.
int testInt = 3;
for (int i = 0; i < 10; i++) { testInt += i; }
Puede establecer un punto de interrupción en la línea de código con la asignación de variables (int testInt = 3), el bucle for o cualquier código dentro del bucle for. No se puede establecer un punto de interrupción en las firmas de método, las declaraciones de un espacio de nombres o una clase, o bien las declaraciones de variables si no hay ninguna asignación y no hay ningún captador o establecedor.
Cómo establecer un punto de interrupción en el código fuente
Puede establecer un punto de interrupción en cualquier línea de código ejecutable. Haga clic en el margen izquierdo situado junto a una línea de código.
También puede seleccionar la línea y presionar F9 y seleccionar Depurar>Alternar punto de interrupción, o hacer clic con el botón derecho y seleccionar Punto de interrupción>Insertar punto de interrupción.
El punto de interrupción aparece como un punto rojo en el margen izquierdo. Para la mayoría de los lenguajes (incluido C#), Visual Studio resalta automáticamente el punto de interrupción y las líneas de ejecución actuales.
Para depurar, presione F5 o seleccione Depurar>Iniciar depuración. Al depurar, la ejecución se detiene en el punto de interrupción, antes de que se ejecute el código de esa línea.
El símbolo del punto de interrupción muestra una flecha amarilla. En el punto de interrupción del ejemplo siguiente, el valor de testInt sigue siendo 3. Por lo tanto, el valor no ha cambiado desde que se inicializó la variable (se estableció en un valor de 3) porque la instrucción en amarillo aún no se ha ejecutado.

Inspeccionar el estado de la aplicación
Cuando el depurador se detiene en el punto de interrupción, se puede consultar el estado actual de la aplicación, incluidos los valores de variable y la pila de llamadas. Por ejemplo, en la ilustración siguiente, puede ver el valor de testInt en una sugerencia de datos y en la ventana de variables locales.
También puede utilizar la barra de herramientas Depurar o los métodos abreviados de teclado para pasar por encima, entrar, salir o continuar la ejecución. También puede mantener el puntero sobre cualquier variable o expresión del código para ver su valor, o usar la consola de depuración para escribir comandos y evaluar expresiones.
Depurar paso a paso
Una vez que comience la depuración, el código se ejecutará hasta que alcance un punto de interrupción o hasta que lo pause manualmente. A continuación, puede utilizar la barra de herramientas Depurar o los métodos abreviados de teclado para pasar por encima, entrar, salir o continuar la ejecución.
- F5: continuar la ejecución.
- F10: pasar por encima de la siguiente instrucción.
- F11: entrar en la función que se está ejecutando.
- Mayús+F11: salir de la función actual.
El control de ejecución permite avanzar, retroceder o saltar etapas del código, facilitando la identificación de problemas y errores. Con estas herramientas, puede analizar el código en detalle, identificar errores y optimizar la lógica del programa.
Desactivar, activar y eliminar puntos de interrupción
El punto de interrupción es un comando de alternancia. Puede hacer clic en él, presionar F9, o bien usar Depurar>Alternar punto de interrupción para eliminarlo o volver a insertarlo.
Para deshabilitar un punto de interrupción sin eliminarlo, mantenga el puntero sobre él o haga clic con el botón derecho y seleccione Deshabilitar punto de interrupción. Los puntos de interrupción deshabilitados aparecen como puntos vacíos en el margen izquierdo o en la ventana Puntos de interrupción.
Para volver a habilitar un punto de interrupción, mantenga el puntero sobre él o haga clic con el botón derecho y seleccione Habilitar punto de interrupción.
Deshabilitar un punto de interrupción impide que se pausa la ejecución, pero deja la definición en su lugar en caso de que quiera habilitar el punto de interrupción más adelante. Al eliminar un punto de interrupción, se elimina permanentemente. Debe establecer un nuevo punto de interrupción para pausar la ejecución en dicha instrucción.
Deshabilitar un único punto de interrupción
- En la ventana Editor de consultas, mantenga el puntero sobre el punto de interrupción y, a continuación, seleccione Deshabilitar.
- En la ventana Puntos de interrupción, desactive la casilla situada a la izquierda del punto de interrupción.
Habilitar un único punto de interrupción
- En la ventana Editor de consultas, mantenga el puntero sobre el punto de interrupción y, a continuación, seleccione Habilitar.
- En la ventana Puntos de interrupción, seleccione el cuadro situado a la izquierda del punto de interrupción.
Eliminar un único punto de interrupción
- En la ventana Editor de consultas, haga clic con el botón derecho en el punto de interrupción y seleccione Eliminar punto de interrupción.
- En la ventana Puntos de interrupción, haga clic con el botón derecho en el punto de interrupción y seleccione Eliminar en el menú contextual.
- En la ventana Puntos de interrupción, seleccione el punto de interrupción y, a continuación, seleccione el botón Eliminar puntos de interrupción seleccionados.
Desactivar o activar todos los puntos de interrupción
Puede deshabilitar todos los puntos de interrupción de una de las maneras siguientes:
- En el menú Depurar, seleccione Deshabilitar todos los puntos de interrupción.
- En la barra de herramientas de la ventana Puntos de interrupción, seleccione el botón Deshabilitar todos los puntos de interrupción.
Puede habilitar todos los puntos de interrupción de una de las maneras siguientes:
- En el menú Depurar, seleccione Habilitar todos los puntos de interrupción.
- En la barra de herramientas de la ventana Puntos de interrupción, seleccione el botón Habilitar todos los puntos de interrupción.
Desactivar todos los puntos de interrupción resulta útil cuando se desea ejecutar el programa sin pausas, pero se quiere conservar la configuración para una sesión de depuración posterior.
Administrar puntos de interrupción desde la ventana Puntos de interrupción
En la ventana Puntos de interrupción se pueden ver y administrar todos los puntos de interrupción de la solución. Esta ubicación centralizada es especialmente útil en una solución grande o para escenarios de depuración complejos en los que los puntos de interrupción son críticos.
En la ventana Puntos de interrupción se pueden buscar, ordenar, filtrar, habilitar/deshabilitar o eliminar puntos de interrupción. También puede establecer condiciones y acciones, o agregar una nueva función o punto de interrupción de datos.
Para abrir la ventana Puntos de interrupción, seleccione Depurar>Ventanas>Puntos de interrupción, o bien presione CTRL+Alt+B.
Para seleccionar las columnas que se van a mostrar en la ventana Puntos de interrupción, seleccione Mostrar columnas. Seleccione un encabezado de columna para ordenar la lista de puntos de interrupción por esa columna.
| Acción | Procedimiento |
|---|---|
| Abrir la ventana Puntos de interrupción | Seleccione Depurar>Ventanas>Puntos de interrupción o presione CTRL+Alt+B. |
| Deshabilitar un punto | Desactive la casilla situada a la izquierda del punto de interrupción o seleccione Deshabilitar. |
| Habilitar un punto | Active la casilla situada a la izquierda del punto de interrupción o seleccione Habilitar. |
| Eliminar un punto | Seleccione el punto de interrupción y elija Eliminar. |
| Eliminar todos los puntos | En el menú Depurar, seleccione Eliminar todos los puntos de interrupción. |
Etiquetas y grupos de puntos de interrupción
Puede usar etiquetas para ordenar y filtrar la lista de puntos de interrupción en la ventana de Puntos de interrupción. Para agregar una etiqueta a un punto de interrupción, haga clic con el botón derecho en el punto de interrupción en el código fuente o en la ventana Puntos de interrupción y, después, seleccione Editar etiquetas.
Agregue una etiqueta nueva o elija una existente y, después, seleccione Aceptar. Para ordenar la lista de puntos de interrupción en la ventana Puntos de interrupción, seleccione Etiquetas, Condiciones u otros encabezados de columna.
En escenarios de depuración complejos, es posible que desee crear grupos de puntos de interrupción para organizar los puntos de interrupción. Esto le permite habilitar y deshabilitar rápidamente agrupaciones lógicas de puntos de interrupción, en función del escenario actual que está intentando depurar.
Puede crear puntos de interrupción en la ventana Puntos de interrupción seleccionando Nuevo > Grupo de puntos de interrupción y proporcionando un nombre para el grupo. Para agregar un punto de interrupción a un grupo, haga clic con el botón derecho en el punto de interrupción y elija Agregar al grupo de puntos de interrupción><nombre de grupo>. O bien, arrastre y suelte los puntos de interrupción en el grupo deseado.
Para establecer un grupo de puntos de interrupción predeterminado, haga clic con el botón derecho en un grupo y seleccione Establecer como grupo de puntos de interrupción predeterminado. Al establecer un grupo de puntos de interrupción predeterminado, los puntos de interrupción recién creados se agregan automáticamente al grupo.
Condiciones de los puntos de interrupción
Puede controlar cuándo y dónde funciona un punto de interrupción configurando condiciones. La condición puede ser cualquier expresión válida que reconozca el depurador.
Para establecer una condición de punto de interrupción, haga clic con el botón derecho en el símbolo del punto de interrupción y seleccione Condiciones (o presione Alt + F9, C).
También puede mantener el ratón sobre el símbolo del punto de interrupción, seleccionar el icono Configuración y, después, seleccionar Condiciones en la ventana Configuración del punto de interrupción.
En la lista desplegable, seleccione Expresión Condicional, Recuento de Impactos, o Filtro, y establezca el valor en consecuencia. Seleccione Cerrar o presione Ctrl+Entrar para cerrar la ventana Configuración del punto de interrupción.
Los puntos de interrupción con condiciones establecidas aparecen con un símbolo + en el código fuente y en las ventanas Puntos de interrupción.
Expresión condicional
Al seleccionar Expresión condicional, puede elegir entre dos condiciones: Es true o Cuando cambie. Elija Es true para interrumpir cuando la expresión se cumpla o Cuando cambie para interrumpir cuando el valor de la expresión cambie.
En el ejemplo siguiente, el punto de interrupción solo se alcanza cuando el valor de testInt es 4. En el ejemplo siguiente, el punto de interrupción solo se alcanza cuando cambia el valor de testInt.
Si establece una condición de punto de interrupción con sintaxis no válida, aparece un mensaje de advertencia. Si especifica una condición de punto de interrupción con sintaxis válida pero semántica no válida, aparece un mensaje de advertencia la primera vez que se alcanza el punto de interrupción.
En ambos casos, el depurador se detendrá cuando se alcance el punto de interrupción no válido. El punto de interrupción se omitirá únicamente si la condición es válida y se evalúa como false.
Para el campo Cuando cambie, el depurador no considerará la primera evaluación de la condición como cambio, por lo que no se visita el punto de interrupción en la primera evaluación.
Recuento de impactos
Si sospecha que un bucle del código comienza a comportarse incorrectamente después de un número determinado de iteraciones, puede establecer un punto de interrupción para detener la ejecución después de ese número de visitas, en lugar de tener que presionar repetidamente F5 para alcanzar esa iteración.
En la sección Condiciones de la ventana Configuración del punto de interrupción, seleccione Número de llamadas y, después, especifique el número de iteraciones. En el siguiente ejemplo, el punto de interrupción está configurado para alcanzarse cada dos iteraciones.
Filtro por proceso, subproceso o equipo
Puede restringir un punto de interrupción para que se active solo en dispositivos especificados o en procesos y subprocesos especificados.
En la sección Condiciones de la ventana Configuración del punto de interrupción, seleccione Filtro y, después, escriba una o varias de las siguientes expresiones:
- MachineName = "nombre"
- IdProceso = valor
- NombreDelProceso = "name"
- ThreadId = valor
- ThreadName = "nombre"
Incluya valores de cadena entre comillas dobles. Puede combinar cláusulas mediante & (AND), || (OR), ! (NOT) y paréntesis.
Tipos especializados de puntos de interrupción
Visual Studio admite diferentes tipos de puntos de interrupción para admitir diferentes escenarios de depuración, como puntos de interrupción condicionales que solo se activan en función de criterios especificados.
| Escenario | Tipo recomendado |
|---|---|
| Inspeccionar una línea de código que puede contener un error | Establezca un punto de interrupción. |
| Detenerse cuando una variable tenga un valor concreto | Pruebe un punto de interrupción condicional. |
| Registrar información sin detener el código | Use un punto de seguimiento. |
| Detenerse cuando cambie una variable | Establezca un punto de interrupción de datos. |
| Detenerse después de otro punto de interrupción | Establezca un punto de interrupción dependiente. |
| Detenerse una sola vez | Establezca un punto de interrupción temporal. |
| Detenerse al principio de una función | Establezca un punto de interrupción de función. |
Puntos de seguimiento
Un punto de seguimiento es un punto de interrupción que imprime un mensaje en la ventana Salida. Un punto de seguimiento puede actuar como una instrucción de seguimiento temporal en el lenguaje de programación y no pausa la ejecución del código.
Para crear un punto de seguimiento, establezca una acción especial en la ventana Configuración del punto de interrupción.
Puntos de interrupción dependientes y temporales
Establezca un punto de interrupción condicionado que detenga la ejecución solo si primero se alcanza otro punto de interrupción.
Establezca un punto de interrupción temporal que le permita interrumpir el código solo una vez.
Si sospecha que un bucle del código comienza a comportarse incorrectamente después de un número determinado de iteraciones, puede establecer un punto de interrupción para detener la ejecución después de ese número de visitas.
Puntos de interrupción de función
Puede interrumpir la ejecución cuando se llama a una función. Esto es útil, por ejemplo, cuando conoce el nombre de la función, pero no su ubicación.
También resulta útil si tiene funciones con el mismo nombre y desea interrumpirlas todas, como funciones sobrecargadas o funciones en proyectos diferentes.
Seleccione Depurar>Nuevo punto de interrupción>Punto de interrupción de función o presione CTRL + K, B. También puede seleccionar Nuevo>Punto de interrupción de función en la ventana Puntos de interrupción.
En el cuadro de diálogo Nuevo punto de interrupción de función, escriba el nombre de la función en el cuadro Nombre de función.
Para restringir la especificación de la función:
- Use el nombre completo de la función.
- Agregue los tipos de parámetro de una función sobrecargada.
- Use el símbolo '!' para especificar el módulo.
- Use el operador de contexto en C++ nativo.
Ejemplo: Namespace1.ClassX.MethodA().
Ejemplo: MethodA(int, string).
Ejemplo: App1.dll!MethodA.
Ejemplo: {MethodA, , App1.dll}+2.
En la lista desplegable Idioma, elija el idioma de la función. Seleccione Aceptar.
Puntos de interrupción de datos
.NET Core 3.x o .NET 5+
Los puntos de interrupción de datos interrumpen la ejecución cuando cambia la propiedad de un objeto específico.
En un proyecto de .NET Core o .NET 5+, inicie la depuración y espere hasta que se alcance un punto de interrupción. En las ventanas Automático, Inspección o Variables locales, haga clic con el botón derecho en una propiedad y seleccione Interrumpir cuando cambia el valor en el menú contextual.
Los puntos de interrupción de datos para .NET Core y .NET 5+ no funcionarán para:
- Propiedades que no se pueden expandir en las ventanas Variables locales, Automático, Inspección o de información sobre herramientas.
- Variables estáticas.
- Clases con el atributo DebuggerTypeProxy.
- Campos dentro de estructuras.
C++ nativo
Los puntos de interrupción de datos interrumpen la ejecución cuando cambia un valor almacenado en una dirección de memoria especificada. Si el valor se lee pero no cambia, la ejecución no se interrumpe.
Puntos de interrupción en la pila de llamadas y el desensamblado
Ventana Pila de llamadas
También se pueden establecer puntos de interrupción en las ventanas del depurador Pila de llamadas y Desensamblado.
Para interrumpir la ejecución en la instrucción o línea a la que una función de llamada regresa, se puede establecer un punto de interrupción en la ventana Pila de llamadas.
Para abrir la ventana Pila de llamadas, la depuración debe estar en pausa. Seleccione Depurar>Ventanas>Pila de llamadas o presione Ctrl+Alt+C.
En la ventana Pila de llamadas, haga clic con el botón derecho en la función de llamada y seleccione Punto de interrupción>Insertar punto de interrupción o presione F9.
Aparecerá un símbolo de punto de interrupción junto al nombre de la llamada de función en el margen izquierdo de la pila de llamadas. El punto de interrupción de la pila de llamadas aparece en la ventana Puntos de Interrupción como una dirección, con una ubicación de memoria que corresponde a la siguiente instrucción ejecutable de la función.
El depurador interrumpe la ejecución en la instrucción.
Ventana Desensamblado
Para abrir la ventana Desensamblado, la depuración debe estar en pausa. Seleccione Depurar>Windows>Desensamblado o presione Ctrl+Alt+D.
En la ventana Desensamblado, haga clic en el margen izquierdo de la instrucción que quiera interrumpir. También puede seleccionarlo y presionar F9, o bien hacer clic con el botón derecho y seleccionar Punto de interrupción>Insertar punto de interrupción.
Advertencias de los puntos de interrupción
Al depurar, un punto de interrupción tiene dos estados visuales posibles:
- Un círculo rojo sólido, si el depurador ha establecido correctamente un punto de interrupción en el proceso de destino.
- Un círculo hueco, gris oscuro o blanco relleno, dependiendo del tema, si el punto de interrupción está deshabilitado o se produce una advertencia al intentar establecer el punto de interrupción.
Para determinar la diferencia, mantenga el puntero sobre el punto de interrupción y compruebe si hay una advertencia.
“No se ha cargado ningún símbolo para este documento”
Vaya a Depurar>Windows>Módulos al depurar y compruebe si el módulo está cargado. Si el módulo está cargado, compruebe la columna Estado de símbolos para ver si se han cargado los símbolos.
Si no se cargan símbolos, compruebe el estado del símbolo para diagnosticar el problema. En la ventana Módulos, haga clic con el botón derecho en el módulo para el que no se han cargado los símbolos y seleccione Información de carga de símbolos.
Si se cargan los símbolos, el archivo PDB no contiene información sobre los archivos de código fuente.
Estas son algunas de las posibles causas:
- Si los archivos de código fuente se agregaron recientemente, confirme que se está cargando una versión actualizada del módulo.
- Es posible crear archivos PDB quitados mediante la opción del enlazador /PDBSTRIPPED.
- Los archivos PDB quitados no contienen información del archivo de código fuente.
- El archivo PDB está dañado parcialmente.
Confirme que está trabajando con un archivo PDB completo y no con un archivo PDB quitado. Elimine el archivo y ejecute una compilación limpia del módulo para intentar resolver el problema.
Si el módulo no está cargado, compruebe lo siguiente para encontrar la causa:
- Confirme que está depurando el proceso correcto.
- Compruebe que está depurando el código correcto.
- Puede averiguar el tipo de código en el que está configurado el depurador para depurar en la ventana Procesos (Depurar>Windows>Procesos).
Por ejemplo, si intenta depurar código de C#, confirme que el depurador está configurado para el tipo y la versión adecuados de .NET; por ejemplo, Administrado (v4*) frente a Administrado (v2*/v3*) en lugar de Administrado (CoreCLR).
El código fuente actual es distinto del código compilado
Si un archivo de código fuente ha cambiado y el origen ya no coincide con el código que se está depurando, el depurador no establecerá puntos de interrupción en el código de forma predeterminada.
Normalmente, este problema se produce cuando se cambia un archivo de código fuente, sin que se haya recompilado el código fuente.
Para corregir este problema, recompile el proyecto. Si el sistema de compilación considera que el proyecto ya está actualizado aunque no lo esté, puede forzar la recompilación del sistema del proyecto.
Para recompilar el proyecto, puede guardar de nuevo el archivo de código fuente o limpiar la salida de compilación antes de compilar.
En raras ocasiones, es posible que desee depurar sin necesidad de tener código fuente coincidente. La depuración sin código fuente coincidente puede conducir a una experiencia de depuración confusa, por lo que debe asegurarse de cómo desea continuar.
Para modificar un solo punto de interrupción, mantenga el puntero sobre el icono de punto de interrupción en el editor y seleccione el icono de configuración. Se agrega una ventana de inspección al editor.
En la parte superior de la ventana de inspección, hay un hipervínculo que indica la ubicación del punto de interrupción. Seleccione el hipervínculo para permitir la modificación de la ubicación del punto de interrupción y active Permitir que el código fuente sea distinto del de la versión original.
Para modificar esta configuración para todos los puntos de interrupción, vaya a Depurar>Opciones y configuración. En la página Depuración/General, desactive la opción Es necesario que los archivos de código fuente coincidan con la versión original.
Asegúrese de volver a habilitar esta opción cuando termine la depuración.
Cuando el punto de interrupción no se alcanza
El punto de interrupción se estableció correctamente, sin advertencia, pero no se alcanzó. En esta situación, el punto de interrupción es un círculo rojo sólido mientras se depura activamente, pero no se alcanza el punto de interrupción.
A continuación se indican algunas cosas que puede comprobar:
- Si el código se ejecuta en más de un proceso o en más de un equipo, asegúrese de que depura el proceso o equipo correcto.
- Confirme que el código se está ejecutando.
- Si está depurando código optimizado, asegúrese de que la función en la que se establece el punto de interrupción no se inserta en otra función.
- Para asociar a escenarios de proceso, asegúrese de depurar el tipo correcto de código.
Para probar que el código se está ejecutando, agregue una llamada a System.Diagnostics.Debugger.Break (C#/VB) o __debugbreak (C++) a la línea de código en la que está intentando establecer el punto de interrupción y, después, recompile el proyecto.
La prueba de Debugger.Break descrita en la comprobación anterior también puede funcionar para probar este problema.
Para investigar, active la opción Asociar a en el cuadro de diálogo Asociar al proceso y elija Seleccionar, si es necesario, para cambiar el tipo de código.
Cuando un punto eliminado continúa alcanzándose
Si eliminó un punto de interrupción durante la depuración, puede alcanzarse de nuevo la próxima vez que se inicia la depuración.
Para dejar de encontrar este punto de interrupción, asegúrese de que todas las instancias del punto de interrupción se quitan de la ventana Puntos de interrupción.
Exportar e importar puntos de interrupción
Para guardar o compartir el estado y la ubicación de los puntos de interrupción, puede exportarlos o importarlos.
Para exportar un solo punto de interrupción a un archivo XML, haga clic con el botón derecho en el punto de interrupción en el código fuente o en la ventana Puntos de interrupción y, luego, seleccione Exportar o Exportar seleccionados.
Seleccione una ubicación de exportación y, a continuación, seleccione Guardar. La ubicación predeterminada es la carpeta de la solución.
Para exportar varios puntos de interrupción, active las casillas situadas junto a los puntos de interrupción en la ventana Puntos de interrupción o especifique los criterios de búsqueda que quiera en el campo Buscar.
Seleccione el icono Exportar todos los puntos de interrupción que coinciden con el criterio de búsqueda actual y guarde el archivo.
Para exportar todos los puntos de interrupción, desactive todas las casillas y deje el campo Buscar en blanco. Seleccione el icono Exportar todos los puntos de interrupción que coinciden con el criterio de búsqueda actual y guarde el archivo.
Para importar puntos de interrupción, seleccione el icono Importar puntos de interrupción de un archivo en la ventana Puntos de interrupción, vaya a la ubicación del archivo XML y seleccione Abrir.
Identificadores de objeto en condiciones
Hay ocasiones en las que desea observar el comportamiento de un objeto específico. Por ejemplo, es posible que desee averiguar por qué se insertó un objeto en una colección más de una vez.
En C# y F#, puede crear identificadores de objeto para instancias específicas de tipos de referencia y usarlos en condiciones de punto de interrupción. Los servicios de depuración de Common Language Runtime (CLR) generan el identificador de objeto y lo asocian al objeto.
Establezca un punto de interrupción en el código en algún lugar después de crear el objeto. Inicie la depuración y, cuando la ejecución se detenga en el punto de interrupción, seleccione Depurar>Windows>Locals o presione Ctrl + Alt + V, L para abrir la ventana Locals.
Busque la instancia de objeto específica en la ventana Variables locales, haga clic con el botón derecho en ella y seleccione Make Object ID. Debería ver el símbolo $ junto con un número en la ventana Locales.
Este es el identificador de objeto. Agregue un nuevo punto de interrupción en el punto que desee investigar; por ejemplo, cuando el objeto se va a agregar a la colección.
Haga clic con el botón derecho en el punto de interrupción y seleccione Condiciones. Use el identificador de objeto en el campo Expresión condicional.
Por ejemplo, si la variable item es el objeto que se va a agregar a la colección, seleccione Es true y escriba item == $<n>, donde <n> es el número de identificador de objeto. La ejecución se interrumpirá cuando ese objeto vaya a agregarse a la colección.
Para eliminar el id. de objeto, haga clic con el botón derecho en la variable en la ventana Variables locales y seleccione Eliminar id. de objeto.
Los identificadores de objeto crean referencias débiles y no impiden que el objeto se recopile en la recolección de elementos no utilizados. Los identificadores de objeto solo son válidos para la sesión de depuración actual.
Puntos de interrupción Visual Studio C#
tags: #depurar #desactivar #puntos #interrupcion #visual #studio
Publicaciones populares:
- La importancia de los filtros de aire comprimido en la seguridad alimentaria
- Beneficios y límites de la ozonización como tratamiento secundario en EDAR
- Jarra depuradora de agua BWT: uso y beneficios
- Lucean y Medina: análisis de la sentencia y sus condenas y absoluciones
- Costo estimado de la cloración salina para piscinas
