- signalfd() is a Linux specific api: SIGNALFD(2):
CONFORMING TO top signalfd() and signalfd4() are Linux-specific.
- FreeBSD and OSX and others can use the widely available kevent/kqueue api for a similar effect.
We let the kernel notify us via kevent() , if there is a SIGUSR1 or SIGUSR2, and then fetch the signal using sigwaitinfo() .
It seems to work just fine on FreeBSD.