I'm a little rusty here, but I think you are talking about the fact that the exit status of the child process has to remain available until the parent process can reap it. Until that happens the child process is in the zombie state. You indicated that the creating thread needed to exit, but that seemed a bit too specific to me, I think that any thread can reap the exit status of a child process.
Related to this is the double-fork pattern to avoid zombie processes (and a couple other issues) when initiating a daemon process.
Related to this is the double-fork pattern to avoid zombie processes (and a couple other issues) when initiating a daemon process.