【发布时间】:2020-03-19 09:21:08
【问题描述】:
我需要使用 C 中的 Linux 进程将 "Ping pong" 写入命令行(父打印 "Ping",它的子 - "pong"),但我不知道如何从父母向孩子发送信号。
#include <stdio.h>
#include <signal.h>
#include <unistd.h>
void childSignalHandler(int signal) {
puts("pong");
}
void parentSignalHandler(int signal) {
puts("Ping ");
}
int main() {
int pid = fork();
if (pid < 0) {
printf("error");
return -1;
}
if (pid == 0) {
signal(SIGUSR2, childSignalHandler);
} else {
signal(SIGUSR1, parentSignalHandler);
raise(SIGUSR1);
}
return 0;
}
【问题讨论】:
-
kill函数向另一个进程发送信号