kill 函数向进程发送指定信号,需要进程 id 和信号号。常用的信号号包括 sighup(终端挂起)、sigint(键盘中断)、sigquit(退出)、sigill(非法指令)、sigfpe(浮点异常)、sigsegv(非法存储器访问)。注意,发送信号需要 root 权限,且某些信号可能被进程屏蔽或忽略。
C 语言 kill 函数
简介
kill 函数用于向进程发送信号。它需要两个参数:进程 ID 和信号号。
使用方法
int kill(pid_t pid, int sig);
- pid:要向其发送信号的进程 ID。
- sig:要发送的信号号。
返回值
立即学习“C语言免费学习笔记(深入)”;
- 成功:0
- 失败:-1,并设置 errno 变量。
信号号
以下是常用的信号号:
- SIGHUP:终端挂起
- SIGINT:键盘中断
- SIGQUIT:退出
- SIGILL:非法指令
- SIGFPE:浮点异常
- SIGSEGV:非法存储器访问
使用示例
发送 SIGHUP 信号给进程 ID 为 12345 的进程:
#include <signal.h>
int main() {
kill(12345, SIGHUP);
return 0;
}</signal.h>
注意事项
- 发送信号需要 root 权限。
- 某些信号可能被进程屏蔽或忽略。