<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Copyright (C) 1988-2015 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "Free Software" and "Free Software Needs
Free Documentation", with the Front-Cover Texts being "A GNU Manual,"
and with the Back-Cover Texts as in (a) below.

(a) The FSF's Back-Cover Text is: "You are free to copy and modify
this GNU Manual.  Buying copies from GNU Press supports the FSF in
developing GNU and promoting software freedom." -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Debugging with GDB: Signaling</title>

<meta name="description" content="Debugging with GDB: Signaling">
<meta name="keywords" content="Debugging with GDB: Signaling">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Altering.html#Altering" rel="up" title="Altering">
<link href="Returning.html#Returning" rel="next" title="Returning">
<link href="Jumping.html#Jumping" rel="prev" title="Jumping">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Signaling"></a>
<div class="header">
<p>
Next: <a href="Returning.html#Returning" accesskey="n" rel="next">Returning</a>, Previous: <a href="Jumping.html#Jumping" accesskey="p" rel="prev">Jumping</a>, Up: <a href="Altering.html#Altering" accesskey="u" rel="up">Altering</a> &nbsp; [<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>
</div>
<hr>
<a name="Giving-your-Program-a-Signal"></a>
<h3 class="section">17.3 Giving your Program a Signal</h3>
<a name="index-deliver-a-signal-to-a-program"></a>

<dl compact="compact">
<dd><a name="index-signal"></a>
</dd>
<dt><code>signal <var>signal</var></code></dt>
<dd><p>Resume execution where your program is stopped, but immediately give it the
signal <var>signal</var>.  The <var>signal</var> can be the name or the number of a
signal.  For example, on many systems <code>signal 2</code> and <code>signal
SIGINT</code> are both ways of sending an interrupt signal.
</p>
<p>Alternatively, if <var>signal</var> is zero, continue execution without
giving a signal.  This is useful when your program stopped on account of
a signal and would ordinarily see the signal when resumed with the
<code>continue</code> command; &lsquo;<samp>signal 0</samp>&rsquo; causes it to resume without a
signal.
</p>
<p><em>Note:</em> When resuming a multi-threaded program, <var>signal</var> is
delivered to the currently selected thread, not the thread that last
reported a stop.  This includes the situation where a thread was
stopped due to a signal.  So if you want to continue execution
suppressing the signal that stopped a thread, you should select that
same thread before issuing the &lsquo;<samp>signal 0</samp>&rsquo; command.  If you issue
the &lsquo;<samp>signal 0</samp>&rsquo; command with another thread as the selected one,
<small>GDB</small> detects that and asks for confirmation.
</p>
<p>Invoking the <code>signal</code> command is not the same as invoking the
<code>kill</code> utility from the shell.  Sending a signal with <code>kill</code>
causes <small>GDB</small> to decide what to do with the signal depending on
the signal handling tables (see <a href="Signals.html#Signals">Signals</a>).  The <code>signal</code> command
passes the signal directly to your program.
</p>
<p><code>signal</code> does not repeat when you press <tt class="key">RET</tt> a second time
after executing the command.
</p>
<a name="index-queue_002dsignal"></a>
</dd>
<dt><code>queue-signal <var>signal</var></code></dt>
<dd><p>Queue <var>signal</var> to be delivered immediately to the current thread
when execution of the thread resumes.  The <var>signal</var> can be the name or
the number of a signal.  For example, on many systems <code>signal 2</code> and
<code>signal SIGINT</code> are both ways of sending an interrupt signal.
The handling of the signal must be set to pass the signal to the program,
otherwise <small>GDB</small> will report an error.
You can control the handling of signals from <small>GDB</small> with the
<code>handle</code> command (see <a href="Signals.html#Signals">Signals</a>).
</p>
<p>Alternatively, if <var>signal</var> is zero, any currently queued signal
for the current thread is discarded and when execution resumes no signal
will be delivered.  This is useful when your program stopped on account
of a signal and would ordinarily see the signal when resumed with the
<code>continue</code> command.
</p>
<p>This command differs from the <code>signal</code> command in that the signal
is just queued, execution is not resumed.  And <code>queue-signal</code> cannot
be used to pass a signal whose handling state has been set to <code>nopass</code>
(see <a href="Signals.html#Signals">Signals</a>).
</p></dd>
</dl>

<p>See <a href="Signals.html#stepping-into-signal-handlers">stepping into signal handlers</a>, for information on how stepping
commands behave when the thread has a signal queued.
</p>
<hr>
<div class="header">
<p>
Next: <a href="Returning.html#Returning" accesskey="n" rel="next">Returning</a>, Previous: <a href="Jumping.html#Jumping" accesskey="p" rel="prev">Jumping</a>, Up: <a href="Altering.html#Altering" accesskey="u" rel="up">Altering</a> &nbsp; [<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>
</div>



</body>
</html>
