Modos de funcionamientoOperational modes

Hay tres modos en que puede funcionar el IDE, como sigue:There are three modes in which the IDE can operate, as follows:

  • Modo de diseñoDesign mode

  • Modo de ejecuciónRun mode

  • Modo de interrupciónBreak mode

    Cómo el motor de depuración personalizado (DE) realiza la transición entre estos modos es una decisión de implementación que requiere estar familiarizado con los mecanismos de transición.How your custom debug engine (DE) transitions between these modes is an implementation decision that requires you to be familiar with the transition mechanisms. La DE puede o no puede implementar directamente estos modos.The DE may or may not directly implement these modes. Estos modos son en realidad paquete modos de depuración que cambian en función de la acción del usuario o de la DE los eventos.These modes are really debug package modes that switch based on user action or events from the DE. Por ejemplo, la transición del modo de ejecución al modo de interrupción se haya provocado por un evento de detención de la DE.For example, the transition from run mode to break mode is instigated by a stopping event from the DE. La transición desde el que ejecutar modo paso a paso o modo de interrupción se haya provocado por el usuario realizando operaciones como paso o ejecutar.The transition from break to either run mode or step mode is instigated by the user performing operations such as Step or Execute. Para obtener más información acerca de las transiciones DE, consulte Control de ejecución.For more information about DE transitions, see Control of execution.

Modo de diseñoDesign mode

Modo de diseño es el estado nonrunning de depuración de Visual Studio, durante el cual puede establecer las características de la aplicación de depuración.Design mode is the nonrunning state of Visual Studio debugging, during which time you can set debugging features in your application.

Solo depuración de algunas características se usan durante el modo de diseño.Only a few debugging features are used during design mode. Un desarrollador puede establecer puntos de interrupción o crear expresiones de inspección.A developer may choose to set breakpoints or create watch expressions. La DE nunca se carga o se llama mientras el IDE está en modo de diseño.The DE is never loaded or called while the IDE is in design mode. Interacción con la DE tiene lugar durante los modos de ejecución e interrupción.Interaction with the DE takes place during run and break modes only.

Modo de ejecuciónRun mode

Modo de ejecución se produce cuando un programa se ejecuta en una sesión de depuración en el IDE.Run mode occurs when a program runs in a debugging session in the IDE. La aplicación se ejecuta hasta que la terminación, hasta que se alcance un punto de interrupción o hasta que se produce una excepción.The application runs until termination, until a breakpoint is hit, or until an exception is thrown. Cuando se ejecuta la aplicación a la cancelación, las transiciones DE en modo de diseño.When the application runs to termination, the DE transitions into design mode. Cuando se alcanza un punto de interrupción o se produce una excepción, la DE transiciones para el modo de interrupción.When a breakpoint is hit or an exception is thrown, the DE transitions to break mode.

Modo de interrupciónBreak Mode

Modo de interrupción se produce cuando se suspende la ejecución del programa de depuración.Break mode occurs when execution of the debugging program is suspended. Modo de interrupción ofrece al programador una instantánea de la aplicación en el momento de la interrupción y permite al desarrollador analizar el estado de la aplicación y cambiar cómo se ejecutará la aplicación.Break mode offers the developer a snapshot of the application at the time of the break and allows the developer to analyze the state of the application and change how the application will run. El desarrollador puede ver y editar código, examinar o modificar los datos, reinicie la aplicación, finalizar la ejecución o continuar la ejecución desde el mismo punto.The developer can view and edit code, examine or modify data, restart the application, end execution, or continue execution from the same point.

Modo de interrupción se especifica cuando la DE envía un evento de detención sincrónica.Break mode is entered when the DE sends a synchronous stopping event. Eventos de detención sincrónico, también denominados eventos de detención, notifican al administrador de depuración de la sesión (SDM) y el IDE que la aplicación que se está depura ha detenido la ejecución de código.Synchronous stopping events, also called stopping events, notify the session debug manager (SDM) and the IDE that the application being debugged has stopped executing code. El IDebugBreakpointEvent2 y IDebugExceptionEvent2 interfaces son ejemplos de eventos de detención.The IDebugBreakpointEvent2 and IDebugExceptionEvent2 interfaces are examples of stopping events.

Detener eventos continúan mediante una llamada a uno de los métodos siguientes, que el depurador de modo de interrupción para ejecutar o modo de paso de transición:Stopping events are continued by a call to one of the following methods, which transition the debugger from break mode to run or step mode:

Modo paso a pasoStep mode

Modo paso a paso se produce cuando el programa de los pasos a la siguiente línea de código, o en, a través o fuera de una función.Step mode occurs when the program steps to the next line of code, or into, over, or out of a function. Un paso se ejecuta llamando al método paso.A step is executed by calling the method Step. Este método requiere DWORDque especifican el STEPUNIT y STEPKIND enumeraciones como parámetros de entrada.This method requires DWORDs that specify the STEPUNIT and STEPKIND enumerations as input parameters.

Cuando el programa correctamente los pasos a la siguiente línea de código o en una función, o se ejecuta hasta el cursor o para establecer un punto de interrupción, pasa automáticamente al DE volver a modo de interrupción.When the program successfully steps to the next line of code or into a function, or it runs to the cursor or to a set breakpoint, the DE automatically transitions back to break mode.

Vea tambiénSee also