To temporarily block SIGCHLD:
sigset_t sset; sigset_t oldset; sigemtpyset(&sset); sigaddset(&sset, SIGCHLD); sigprocmask(SIG_BLOCK, &sset, 0); ... sigprocmask(SIG_UNBLOCK, &sset, 0);