Linux信号实验——关闭自身进程

Linux信号实验——关闭自身进程

主要概念:

信号:linux系统响应某些条件产生的一个事件,接收到信号的进程会执行相应的操作。

kill -l 查看所有信号

raise() 函数向进程自身发送信号,我们这里发送杀死进程的信号 SIGKILL

相关函数:

#include <sys/types.h>
#include <signal.h>
int kill(pid_t pid, int sig);				//发送信号
int raise(int sig);							//向进程自身发送信号

代码:

//raise.c
#include <stdio.h>
#include <unistd.h>
#include <signal.h>
#include <stdlib.h>
#include <sys/types.h>

int main(void)
{
	printf("raise before\r\n");
	raise(9);
	printf("raise after\r\n");
	
	return 0;
}

编译运行:

gcc -o raise raise.c

./raise

实验现象:

sixer@ubuntu:~/imx_usr/sys_app/01_process/signal$ ./raise
raise before
Killed

总结:

​ 使用 raise() 函数向进程自身发送 SIGKILL 信号,相当于 kill(getpid(), SIGKILL)

posted @ 2021-09-11 11:22  Sixer6  阅读(30)  评论(0)    收藏  举报