1.PROCESS1的结构
void sig_handler(int signalNo)
{
switch (signalNo) {
case SIGTERM:
exit(0);
break;
case SIGUSR1:
{
fprintf(stderr, "get signal SIGUSR1\n");
}
break;
case SIGUSR2:
{
fprintf(stderr, "DaemonProcess receives SIGUSR2 ...................!\n");
fflush(stderr);
}
break;
default:
break;
}
return;
}
main()
{
signal(SIGTERM, sig_handler);
signal(SIGUSR1, sig_handler);//SIGUSR1==10
signal(SIGUSR2, sig_handler);//SIGUSR2==12
wait(0);
}
2.在终端里
$killall -s 10 PROCESS1
就可以发信号了。(注:kill相当于send信号)
3.PROCESS2
调用:
kill( PROCESS1_pid,SIGUSR1);
也可以。