Utilizar puntos de interrupción

Los puntos de interrupción son marcadores temporales que se colocan en el programa ejecutable para indicar al depurador que detenga el programa en un punto determinado. Cuando se encuentra un punto de interrupción, la ejecución se suspende en él antes de ejecutar la línea, momento en el cual puede verse la pila de la hebra y comprobar el contenido de las variables, los registros y la memoria.

Acerca de esta tarea

Al depurar aplicaciones AIX, están soportados los siguientes tipos de puntos de interrupción:

Los puntos de interrupción de evento se establecen en la vista Puntos de interrupción pulsando el botón Gestionar puntos de interrupción de evento de lenguaje compilado y, a continuación, seleccionando el tipo de evento que el depurador debe capturar en el recuadro de diálogo Gestionar puntos de interrupción de evento. Estos puntos de interrupción incluyen todas las señales estándar y diversos eventos de interés, como por ejemplo expresiones C++ y llamadas a funciones de biblioteca como exit(). Para las señales POSIX, puede elegir que se le notifiquen todas las apariciones de cada señal individual (señales manejadas) o sólo aquellas apariciones en las que no se ha suministrado ningún manejador (señales no manejadas).

Los puntos de interrupción de línea se pueden establecer en el editor efectuando una doble pulsación sobre el área de regla a la izquierda de una línea ejecutable o pulsando una acción de menú emergente en el editor de fuente Icono Punto de interrupción de línea fuente; también los puede establecer el asistente en la vista Puntos de interrupción. Icono Punto de interrupción genérico. Si desea tener un punto de interrupción de línea específico de hebra, debe establecerlo desde la vista Puntos de interrupción mientras haya una sesión de depuración activa. Los puntos de interrupción de entrada pueden establecerse en la vista Módulos pulsando un punto de entrada con el botón derecho del ratón y seleccionando Establecer punto de interrupción de entrada en el menú emergente, o mediante un asistente en la vista Puntos de interrupción. Además, puede pulsar con el botón derecho del ratón el destino de depuración (o una de sus hebras o marcos de pila) en la vista Depurar y seleccionar Opciones > Detener en todas las entradas de función en el menú emergente para efectuar la detención en todos los puntos de entrada (esta opción también está disponible en el menú emergente de la vista Puntos de interrupción). Todos los demás puntos de interrupción se establecen mediante un asistente en la vista Puntos de interrupción. Para acceder a los asistentes destinados a establecer puntos de interrupción, pulse sobre la vista Puntos de interrupción con el botón derecho del ratón y seleccione Añadir puntos de interrupción en el menú emergente. Se abrirá un menú que permite elegir el tipo de punto de interrupción que se desea establecer. Al utilizar los asistentes para establecer un punto de interrupción, puede especificar parámetros opcionales de punto de interrupción y establecer puntos de interrupción condicionales (consulte el tema relacionado).

Nota:
  • Los puntos de interrupción de observación pueden añadirse especificando un nombre de variable en el asistente. La variable puede tener 1, 2, 4 u 8 bytes de longitud. Los puntos de interrupción de observación de 2, 4 u 8 bytes de longitud deben alinearse en límites de 2-, 4- u 8- bytes, respectivamente. Un punto de interrupción auto determina el tamaño que debe supervisarse en función del tamaño de la variable. El hardware de Power actual sólo permite un punto de observación (el hardware más antiguo no permitía puntos de observación; si no están soportados por el sistema destino, la acción no se mostrará).
  • Si está utilizando la Versión 11.1 o una versión posterior del motor de depuración, el asistente Punto de interrupción de entrada se ha mejorado. El asistente ahora muestra una lista de todos los puntos de entrada depurables. Puede acotar la lista de selección escribiendo el nombre del punto de entrada en el campo de texto.

En la vista Puntos de interrupción se visualiza una lista de todos los puntos de interrupción (para todas las sesiones de depuración), a menos que utilice la acción Filtrar por destino de depuración o enlace la vista Puntos de interrupción a la vista Depurar. Para filtrar los puntos de interrupción que no están relacionados con la sesión de depuración actual, pulse el botón Mostrar puntos de interrupción soportados por el destino seleccionado de la vista Puntos de interrupción. Para enlazar la vista Puntos de interrupción a la vista Depurar, pulse el conmutador Enlazar con vista Depurar; si se selecciona este conmutador y un punto de interrupción suspende una sesión de depuración, ese punto de interrupción quedará seleccionado automáticamente en la vista Puntos de interrupción.

También puede agrupar los puntos de interrupción para facilitar su visualización en la vista Puntos de interrupción. Los puntos de interrupción puede agruparse por puntos de interrupción (la lista estándar de puntos de interrupción), tipos de puntos de interrupción (por ejemplo, agrupados por puntos de interrupción de línea y de entrada) y por grupos de trabajo de puntos de interrupción (grupos definidos por el usuario). Para agrupar puntos de interrupción, seleccione el icono de flecha abajo de la vista Puntos de interrupción y seleccione la agrupación que desea visualizar en la vista Puntos de interrupción. Al pulsar Valores avanzados en este menú, se abrirá un recuadro de diálogo que permite crear agrupaciones anidadas. Para crear grupos de trabajo, elija Grupos de trabajo en el menú del icono de flecha abajo de la vista Puntos de interrupción.

Las entradas de puntos de interrupción de la lista ofrece, entre corchetes, un resumen de las propiedades de los puntos de interrupción. Mediante opciones de menú emergente, puede añadir puntos de interrupción, eliminar puntos de interrupción y habilitar o inhabilitar puntos de interrupción. También puede editar las propiedades de los punto de interrupción con una opción de menú emergente. Mediante los pulsadores de la vista Puntos de interrupción, puede eliminar puntos de interrupción.

Si elige editar un punto de interrupción, se abrirá el asistente con el que se ha creado (si no ha utilizado un asistente para crear el punto de interrupción, se abrirá el asistente correspondiente al tipo de punto de interrupción). En el asistente, puede pulsar Siguiente > o < Anterior para ver o editar los valores del punto de interrupción en el asistente. Cuando haya terminado, pulse Finalizar para cambiar el punto de interrupción o pulse Cancelar para salir del asistente sin realizar cambios.

Los puntos de interrupción pueden habilitarse e inhabilitarse mediante menús emergentes en la vista Puntos de interrupción o en el editor y mediante un recuadro de selección en la vista Puntos de interrupción. Para obtener información acerca de cómo habilitar e inhabilitar puntos de interrupción, consulte el tema relacionado.

En la vista Puntos de interrupción, hay dos indicadores a la izquierda de un punto de interrupción establecido (). En el extremo izquierdo hay un recuadro de selección si el punto de interrupción está habilitado. Si está habilitado, el recuadro contiene una marca de selección (puntero A. en el diagrama que sigue). Si está inhabilitado, el recuadro no contiene marca de selección (puntero B. en el diagrama que sigue):

A la izquierda inmediata, un indicador de marca de selección indica un punto de interrupción que el motor de depuración ha instalado satisfactoriamente (si el punto de interrupción está habilitado, este indicador está rellenado; si el punto de interrupción está inhabilitado, este indicador no está rellenado). En el editor, los puntos de interrupción de línea se indican mediante un indicador de marca de selección, que indica un punto de interrupción que el motor de depuración ha instalado satisfactoriamente (si el punto de interrupción está habilitado, este indicador está rellenado; si el punto de interrupción está inhabilitado, este indicador no está rellenado).

Los puntos de interrupción deben establecerse para que puedan suspender la ejecución. Es posible añadir un punto de interrupción que no sea válido para la sesión de depuración actual. Este punto de interrupción no se establecerá hasta que forme parte de una sesión de depuración que incluya un motor de depuración que reconozca el punto de interrupción.

En el editor, se visualizan indicadores de punto de interrupción de línea y de entrada en la barra de marcadores situada a la izquierda del editor. En la vista Puntos de interrupción se visualizan indicadores para puntos de interrupción de línea, entrada, dirección, observación y carga.

En la vista Puntos de interrupción, el editor de código fuente se abrirá en la ubicación de un punto de interrupción si realiza una de las acciones siguientes:

Resultados


Comentarios