* 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). Thanks, Florian