up:: [[C primitives système]] title:: "tuer un processus (envoyer un signal)" #s/informatique --- - dans la librairie `signal.h` - prends 2 arguments - le [[PID]] du [[processus]] - le [[unix signaux|signal]] à envoyer au processus > [!info] Tester si un processus existe > On peut utiliser `kill(, 0)` (une valeur `0` pour le signal) pour **tester si le processus de [[PID]] `` existe** ```C #include // pour printf #include // pour atoi #include // pour kill int main(int argc, char **argv) { printf("%d\n", argc); if (argc < 2) { printf("Needs at least one argument"); return -1; } else if (argc == 2) { int to_kill = atoi(argv[1]); printf("killing process: pid=%d\n", to_kill); kill(to_kill, 15); printf("[done]\n"); } else if (argc == 3) { int to_kill = atoi(argv[1]); int signal = atoi(argv[2]); printf("killing process: pid=%d, sending signal %d\n", to_kill, signal); kill(to_kill, signal); printf("[done]\n"); } } ```