struct sigaction psa;
Я включил мой обработчик сигналов в основной функции, как показано ниже:
memset (&psa, 0, sizeof (psa));
psa.sa_handler = pSigHandler;
sigaction (SIGALRM, &psa, NULL);
sigaction(SIGVTALRM, &psa, NULL);
sigaction(SIGPROF, &psa, NULL);
Мой обработчик сигналов выглядит следующим образом:
static void pSigHandler(int signo){
printf("Pareint signum: %d", signo);// debug
switch (signo) {
case SIGALRM:
printf("P SIGALRM handler");//debug
break;
case SIGVTALRM:
printf("P SIGVTALRM handler");//debug
break;
case SIGPROF:
printf("P SIGPROF handler");//debug
break;
default: /*Should never get this case*/
break;
}
return;
}
Теперь мой вопрос может бытьДля некоторых очевидно, почему я не вижу напечатанные строки отладки, когда я запускаю это?На самом деле ничего не было напечатано.Большое спасибо за помощь в понимании этого.Я запускаю его на Linux, использовал Eclipse для программирования.