foot/reaper.h
Daniel Eklöf f49742ebba
reaper: new module, uses a signalfd to wait() on child processes
Use a signalfd to listen for SIGCHLD signals.

When we receive a SIGCHLD over the signalfd, reap all dead children by
looping over all registered child PIDs and call waitpid(WNOHANG) on
them.
2020-05-21 20:15:10 +02:00

12 lines
212 B
C

#pragma once
#include <sys/wait.h>
#include "fdm.h"
struct reaper;
struct reaper *reaper_init(struct fdm *fdm);
void reaper_destroy(struct reaper *reaper);
void reaper_add(struct reaper *reaper, pid_t pid);