发送信号--对另一个进程来说,不可预知
指定发给某pid,某个信号 kill
指定发给当前进程,某个信号 raise
指定时间产生SIGALARM信号 alarm
指定超时信号 getitimer
安装中断--设置某个进程到来时的处理方式
signal安装中断
signal( 某信号_sig,myhandler);-----||---void myhandle(int signo) {……} // args-捕获信号值,do-信号处理;
sigaction安装中断
有两种信号处理函数供选择,二选一:
act.sa_handler = myhandler1;
----------------------------------------------void myhandler1(int signo) {……} // args-捕获信号值;
或 act.sa_sigaction = myhandler2;
----------------------------------------------void myhandler2(int signo,siginfo *info,void *p) {……} // args-捕获信号值、信息表、被中断的进程或线程的上下文的指针;
extern int sigaction(某信号_sig,现在的安装&act,执行此函数前的安装信息&ocat);
信号集合、屏蔽信号
获取当前未决信号
extern int sigpending (sigset_t *_set);
信号集合操作
extern int sigemptyset(sigset_t *_set);
extern int sigfillset(sigset_t *_set);……
等待信号
pause();