Avoiding GDB Signal Noise.

1346 ワード

原文:http://peeterjoot.wordpress.com/2010/07/07/avoiding-gdb-signal-noise/
A quick note for future reference(recordd elsewhere and subsequently lost)
Suppose your program handles a signal that gdb intercepts by default、like the following example
(gdb) c
Continuing.

Program received signal SIGUSR1, User defined signal 1.
[Switching to Thread 47133440862528 (LWP 4833)]
0x00002ade149d6baa in semtimedop () from /lib64/libc.so.6
(gdb) c
You can hit‘c’to continue at this point,but if it happens repeatdily in various threads(like when one thread is careadukaill()to force each other thread in turn to duits stack and studia‘ated’a pereada bite.atch bite.atch bit.ated。
For the same SIGU SR 1 example above,you can query the gdb handler rules like so:
(gdb) info signal SIGUSR1
Signal        Stop      Print   Pass to program Description
SIGUSR1       Yes       Yes     Yes             User defined signal 1
And if deemid to not be of interest、where you just want your program to conting without prompting or spamming、something like the follwing does the trick:
(gdb) handle SIGUSR1 noprint nostop
Signal        Stop      Print   Pass to program Description
SIGUSR1       No        No      Yes             User defined signal 1