c 信号处理
Posted luckygxf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c 信号处理相关的知识,希望对你有一定的参考价值。
1. 使用signal(int signal, function)向内核注册信号处理函数
2. 使用raise()向本进程发送信号,通过kill()向其他进程发送信号
#include <stdio.h> #include <signal.h> #include <unistd.h> #include <stdlib.h> void signal_handle(int signal); int main(int argc, char **argv) { signal(SIGUSR1, signal_handle); int cpid, ppid; if ((cpid = fork()) == 0) { ppid = getppid(); cpid = getpid(); printf("cid:%d, ppid:%d ", cpid, ppid); kill(ppid, SIGUSR1); printf("send signal to parent "); } else { int pid = wait(NULL); printf("pid after wait:%d ", pid); } } void signal_handle(int signal) { printf("receive signal:%d ", signal); }
以上是关于c 信号处理的主要内容,如果未能解决你的问题,请参考以下文章