如何使用signal(3)为在运行中的操作系统上的所有信号注册一个信号处理程序?
我的代码如下:
我的代码如下:
void sig_handler(int signum)
{
printf("Received signal %d\n", signum);
}
int main()
{
signal(ALL_SIGNALS_??, sig_handler);
while (1) {
sleep(1);
};
return 0;
}
for
循环中,是从1到31? - Jakub M./usr/include/signal.h
中查看。没有一个通用的宏可以代表所有信号。此外,有些信号是无法被捕获的,例如SIGKILL
。 - jim mcnamara