1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<html> 3<!-- Copyright (C) 1988-2021 Free Software Foundation, Inc. 4 5Permission is granted to copy, distribute and/or modify this document 6under the terms of the GNU Free Documentation License, Version 1.3 or 7any later version published by the Free Software Foundation; with the 8Invariant Sections being "Free Software" and "Free Software Needs 9Free Documentation", with the Front-Cover Texts being "A GNU Manual," 10and with the Back-Cover Texts as in (a) below. 11 12(a) The FSF's Back-Cover Text is: "You are free to copy and modify 13this GNU Manual. Buying copies from GNU Press supports the FSF in 14developing GNU and promoting software freedom." --> 15<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ --> 16<head> 17<title>Debugging with GDB: Background Execution</title> 18 19<meta name="description" content="Debugging with GDB: Background Execution"> 20<meta name="keywords" content="Debugging with GDB: Background Execution"> 21<meta name="resource-type" content="document"> 22<meta name="distribution" content="global"> 23<meta name="Generator" content="makeinfo"> 24<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 25<link href="index.html#Top" rel="start" title="Top"> 26<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index"> 27<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> 28<link href="Thread-Stops.html#Thread-Stops" rel="up" title="Thread Stops"> 29<link href="Thread_002dSpecific-Breakpoints.html#Thread_002dSpecific-Breakpoints" rel="next" title="Thread-Specific Breakpoints"> 30<link href="Non_002dStop-Mode.html#Non_002dStop-Mode" rel="previous" title="Non-Stop Mode"> 31<style type="text/css"> 32<!-- 33a.summary-letter {text-decoration: none} 34blockquote.smallquotation {font-size: smaller} 35div.display {margin-left: 3.2em} 36div.example {margin-left: 3.2em} 37div.indentedblock {margin-left: 3.2em} 38div.lisp {margin-left: 3.2em} 39div.smalldisplay {margin-left: 3.2em} 40div.smallexample {margin-left: 3.2em} 41div.smallindentedblock {margin-left: 3.2em; font-size: smaller} 42div.smalllisp {margin-left: 3.2em} 43kbd {font-style:oblique} 44pre.display {font-family: inherit} 45pre.format {font-family: inherit} 46pre.menu-comment {font-family: serif} 47pre.menu-preformatted {font-family: serif} 48pre.smalldisplay {font-family: inherit; font-size: smaller} 49pre.smallexample {font-size: smaller} 50pre.smallformat {font-family: inherit; font-size: smaller} 51pre.smalllisp {font-size: smaller} 52span.nocodebreak {white-space:nowrap} 53span.nolinebreak {white-space:nowrap} 54span.roman {font-family:serif; font-weight:normal} 55span.sansserif {font-family:sans-serif; font-weight:normal} 56ul.no-bullet {list-style: none} 57--> 58</style> 59 60 61</head> 62 63<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000"> 64<a name="Background-Execution"></a> 65<div class="header"> 66<p> 67Next: <a href="Thread_002dSpecific-Breakpoints.html#Thread_002dSpecific-Breakpoints" accesskey="n" rel="next">Thread-Specific Breakpoints</a>, Previous: <a href="Non_002dStop-Mode.html#Non_002dStop-Mode" accesskey="p" rel="previous">Non-Stop Mode</a>, Up: <a href="Thread-Stops.html#Thread-Stops" accesskey="u" rel="up">Thread Stops</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p> 68</div> 69<hr> 70<a name="Background-Execution-1"></a> 71<h4 class="subsection">5.5.3 Background Execution</h4> 72 73<a name="index-foreground-execution"></a> 74<a name="index-background-execution"></a> 75<a name="index-asynchronous-execution"></a> 76<a name="index-execution_002c-foreground_002c-background-and-asynchronous"></a> 77 78<p><small>GDB</small>’s execution commands have two variants: the normal 79foreground (synchronous) behavior, and a background 80(asynchronous) behavior. In foreground execution, <small>GDB</small> waits for 81the program to report that some thread has stopped before prompting for 82another command. In background execution, <small>GDB</small> immediately gives 83a command prompt so that you can issue other commands while your program runs. 84</p> 85<p>If the target doesn’t support async mode, <small>GDB</small> issues an error 86message if you attempt to use the background execution commands. 87</p> 88<a name="index-_0026_002c-background-execution-of-commands"></a> 89<p>To specify background execution, add a <code>&</code> to the command. For example, 90the background form of the <code>continue</code> command is <code>continue&</code>, or 91just <code>c&</code>. The execution commands that accept background execution 92are: 93</p> 94<dl compact="compact"> 95<dd><a name="index-run_0026"></a> 96</dd> 97<dt><code>run</code></dt> 98<dd><p>See <a href="Starting.html#Starting">Starting your Program</a>. 99</p> 100</dd> 101<dt><code>attach</code></dt> 102<dd><a name="index-attach_0026"></a> 103<p>See <a href="Attach.html#Attach">Debugging an Already-running Process</a>. 104</p> 105</dd> 106<dt><code>step</code></dt> 107<dd><a name="index-step_0026"></a> 108<p>See <a href="Continuing-and-Stepping.html#Continuing-and-Stepping">step</a>. 109</p> 110</dd> 111<dt><code>stepi</code></dt> 112<dd><a name="index-stepi_0026"></a> 113<p>See <a href="Continuing-and-Stepping.html#Continuing-and-Stepping">stepi</a>. 114</p> 115</dd> 116<dt><code>next</code></dt> 117<dd><a name="index-next_0026"></a> 118<p>See <a href="Continuing-and-Stepping.html#Continuing-and-Stepping">next</a>. 119</p> 120</dd> 121<dt><code>nexti</code></dt> 122<dd><a name="index-nexti_0026"></a> 123<p>See <a href="Continuing-and-Stepping.html#Continuing-and-Stepping">nexti</a>. 124</p> 125</dd> 126<dt><code>continue</code></dt> 127<dd><a name="index-continue_0026"></a> 128<p>See <a href="Continuing-and-Stepping.html#Continuing-and-Stepping">continue</a>. 129</p> 130</dd> 131<dt><code>finish</code></dt> 132<dd><a name="index-finish_0026"></a> 133<p>See <a href="Continuing-and-Stepping.html#Continuing-and-Stepping">finish</a>. 134</p> 135</dd> 136<dt><code>until</code></dt> 137<dd><a name="index-until_0026"></a> 138<p>See <a href="Continuing-and-Stepping.html#Continuing-and-Stepping">until</a>. 139</p> 140</dd> 141</dl> 142 143<p>Background execution is especially useful in conjunction with non-stop 144mode for debugging programs with multiple threads; see <a href="Non_002dStop-Mode.html#Non_002dStop-Mode">Non-Stop Mode</a>. 145However, you can also use these commands in the normal all-stop mode with 146the restriction that you cannot issue another execution command until the 147previous one finishes. Examples of commands that are valid in all-stop 148mode while the program is running include <code>help</code> and <code>info break</code>. 149</p> 150<p>You can interrupt your program while it is running in the background by 151using the <code>interrupt</code> command. 152</p> 153<dl compact="compact"> 154<dd><a name="index-interrupt-1"></a> 155</dd> 156<dt><code>interrupt</code></dt> 157<dt><code>interrupt -a</code></dt> 158<dd> 159<p>Suspend execution of the running program. In all-stop mode, 160<code>interrupt</code> stops the whole process, but in non-stop mode, it stops 161only the current thread. To stop the whole program in non-stop mode, 162use <code>interrupt -a</code>. 163</p></dd> 164</dl> 165 166<hr> 167<div class="header"> 168<p> 169Next: <a href="Thread_002dSpecific-Breakpoints.html#Thread_002dSpecific-Breakpoints" accesskey="n" rel="next">Thread-Specific Breakpoints</a>, Previous: <a href="Non_002dStop-Mode.html#Non_002dStop-Mode" accesskey="p" rel="previous">Non-Stop Mode</a>, Up: <a href="Thread-Stops.html#Thread-Stops" accesskey="u" rel="up">Thread Stops</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p> 170</div> 171 172 173 174</body> 175</html> 176