Puntos de interrupción condicionales

Los parámetros opcionales de puntos de interrupción se utilizan para controlar el comportamiento de los puntos de interrupción.

Al establecer un punto de interrupción, puede definirlo como condicional (se detenga o no) estableciendo estos parámetros en la página parámetros opcionales de cualquier asistente de puntos de interrupción (generalmente editando un punto de interrupción existente):

Parámetro opcional de punto de interrupción Descripción Tipo de punto de interrupción soportado
Hebra

Los puntos de interrupción pueden ser específicos de una hebra. En el asistente, puede especificar si el punto de interrupción se aplica a todas las hebras (el valor predeterminado) o sólo a una hebra específica (n=one).

Este parámetro está soportado en todos los tipos de puntos de interrupción.
Frecuencia Los controles de frecuencia se utilizan para indicar al depurador cuándo debe detenerse en un punto de interrupción y cuándo saltarlo. El depurador realiza un seguimiento del número de veces que se encuentra cada punto de interrupción. Los campos de esta sección indican al depurador en qué aparición de un punto de interrupción debe detenerse por primera vez, la frecuencia con la que se detendrá y en qué aparición dejará de detenerse.

Para establecer la frecuencia de los puntos de interrupción se utilizan los parámetros siguientes:

  • Desde: especifique la primera aparición del punto de interrupción en la que el depurador deba detenerse. Por ejemplo, si desea que el depurador pase por alto el punto de interrupción las primeras cinco veces que aparece, especifique "6".
  • Hasta: especifique la última aparición del punto de interrupción en la que el depurador deba detenerse. Por ejemplo, si desea que el punto de interrupción se ignore a partir de la aparición número 20, especifique "20". Para que el depurador siempre se detenga en el punto de interrupción, especifique "Infinity".
  • Cada: especifique la frecuencia con la que desea que se detenga el depurador en este punto de interrupción. Por ejemplo, si desea que se detenga sólo en una de cada cuatro apariciones, especifique "4".
Este parámetro está soportado en todos los tipos de puntos de interrupción.
Expresión Puede especificar una expresión en este campo. La ejecución del programa solo se detendrá en el punto de interrupción si la condición especificada en este campo resulta verdadera (cualquier valor distinto de cero se considera verdadero).

Por ejemplo, si está depurando un programa C++, puede escribir la expresión siguiente:

(i==1) || (j==k) && (k!=5)

Una expresión condicional es cualquier expresión válida en el lenguaje de la ubicación del punto de interrupción que dé como resultado un número, y que no tenga efectos secundarios ni implique la llamada a una función. En C y C++, esto significa que no está permitido ninguno de los operadores de asignación ni los operadores de incremento y decremento (++ y --).

Atención: Aunque una aplicación no parezca detenerse en un punto de interrupción cuya condición no se haya cumplido, el depurador suspende temporalmente la aplicación mientras evalúa la condición. En la mayoría de los casos, esta breve pausa no es significativa. Sin embargo, en una aplicación multihebra, esto puede provocar que el sistema operativo cambie el orden en el que se despachan las hebras.
Nota:
  • Al depurar programas COBOL para AIX, sólo se soporta la condición de relación con los operadores siguientes:

    >, <, =, >=, <=, NOT >, NOT <, NOT =

  • El operando izquierdo debe ser una variable y el operando derecho debe ser una constante. Por ejemplo, var1 > 5 es válido, mientras que 5 < var1 y var1 > var2 no lo son.
  • La constante hexadecimal sólo se permite con variables POINTER.
  • Las variables no numéricas y de coma flotante externa deben compararse con un literal no numérico.
  • Las variables de decimal con zona deben compararse con una constante numérica.
  • No se permiten condiciones complejas u comparaciones de grupo.
  • La comparación se basa en el entorno local, independientemente de cualquier opción de compilación COLLSEQ o especificación de secuencia de clasificación en el programa.
  • Al depurar programas de PL/I para AIX, consulte Expresión de PL/I soportada.
Línea, entrada y dirección.

Comentarios