+ -
当前位置:首页 → 问答吧 → 信号捕捉

信号捕捉

时间:2010-07-02

来源:互联网

这样处理信号是否有问题啊?
void signal_catch(int signo)
{

    if (    (signo == SIGQUIT) || (signo == SIGILL)  || (signo == SIGTRAP)
         || (signo == SIGABRT) || (signo == SIGEMT)  || (signo == SIGFPE)
         || (signo == SIGBUS)  || (signo == SIGSEGV) || (signo == SIGSYS)
       )
    {
        TRAMessage("/tmp/db.log",NULL,"signo=[%d]",signo);
        exit(-1);
    }

/*
   printf("signo:%d\n",signo);
   signal(signo,signal_catch);
*/
}

void signal_declare_all()
{
   int i;
   for (i=0;i<64;i++)
       signal(i,signal_catch);
}

作者: wuqiang97   发布时间: 2010-07-02

拿到机器上跑炮看就知道了呗

   不懂的再来问

作者: land5280   发布时间: 2010-07-03