Either the Debugger or the executing application has control during a debugging session. The Debugger has control when no application is running or the running application is interrupted, for example, at a breakpoint. When the Debugger has control, it can send commands to the client process for execution. The application has control whenever it is executing ABL code, for example, in response to a Debugger control flow command such as Debug > Continue. When the application has control, it interacts with the user and database as if the Debugger were not running.
The following sections detail the Debugger and application interaction: