On Fri, Nov 16, 2018 at 02:40:49PM +0100, Florian Weimer wrote: > * Dave Martin: > > > The traditional way would be install a handler for SIGCHLD and > > do a sigsuspend()/pselect()/ppoll(). Then when the suspend() returns, > > you pump the status of any children with wait*(..., WNOHANG). > > > > Does that not work for you for some reason? > > Changing signal handlers is not what a library should do because they > are process-global (not even thread-specific). True, though this is a problem with global resources too. I guess I need to go and read the slides to understand the broader context here. (Is strace a library?) Cheers ---Dave