SIGINFO and pthreads
Mikhail Teterin
mi+mx at aldan.algebra.com
Thu Jun 8 18:15:48 UTC 2006
четвер 08 червень 2006 00:17, Maxim Konovalov написав:
> Inline it if it's small. Mailman strips most attachments.
Damn... Yes, it is small -- this is just a demo program. Compile it first as
cc -o t t.c
Then -- run and try various keyboard signals like Ctrl-C, Ctrl-Z, Ctrl-T
(SIGINFO), or Ctrl-\. (It will not quit on its own, you'll have to kill it
from another prompt.)
They will all work. Then -- recompile as
cc -o t -pthread t.c
And run... This time around it will ignore the Ctrl-T, while continuing to
respond to others.
> libpthread uses SIGINFO for dumping thread information to a file but
> looking over the code it seems it does allow to use SIGINFO to the
> app.
I'd like to be able to disable the debugging feature or, at least, force it to
call my signal-handler AS EXPECTED AND DOCUMENTED, after it is done with its
own dumping.
-mi
#include <stdio.h>
#include <signal.h>
#include <err.h>
#include <unistd.h>
static void
sigfunc(int signum)
{
printf("Received signal %d\n", signum);
}
int
main(int argc, char *argv[])
{
int i;
for (i = 1; i < 32; i++)
if (signal(i, sigfunc) == SIG_ERR) /* KILL and STOP */
warn("Trying to handle %d failed", i);
for (;;)
sleep(1000);
return 0;
}
More information about the freebsd-threads
mailing list