leonid-shevtsov/headless — pull request #20 by recursive (2011-12-31 09:44:54+00:00)
Title: removes Process.detach(pid)

Per the Ruby 1.9.3 docs:

Process.detach(pid)

Some operating systems retain the status of terminated child processes until the parent collects that status (normally using some variant of wait(). If the parent never collects this status, the child stays around as a zombie process. Process::detach prevents this by setting up a separate Ruby thread whose sole job is to reap the status of the process pid when it terminates. __Use detach only when you do not intent to explicitly wait for the child to terminate.__