【发布时间】:2015-12-31 00:23:35
【问题描述】:
我正在编写具有必须处理我给他的任何信号的进程的代码。我读到我应该做这样的事情
void signalHandler(int sig_num)
{
// some stuff
}
//My process
int i;
for (i = 1; i <= 64; i++)
signal(i, signalHandler);
这是正确的解决方案吗??
【问题讨论】:
-
如果不知道您要解决什么问题,就很难知道解决方案是否正确。
-
这个直接问题的直接答案是“否”。
-
我的进程必须处理我发送的任何信号。因此,如果我发送了例如 SIGINT 或其他一个,它应该为这个信号起作用。我不想为所有信号写 signal(..., signalHandler) 所以我想知道如何使它通用。
-
你的代码是否知道它正在处理什么信号?
-
我的程序可以获得 64 个信号中的一个,我希望所有这些信号都有一个功能。