[Adium-devl] rev 19069 - in branches/adium-1.0/Plugins/Gaim Service: . Libgaim.framework/Versions/A/Headers

Andreas Monitzer soc at monitzer.com
Sun Feb 25 18:00:23 UTC 2007


On Feb 25, 2007, at 15:35, Graham Booker wrote:

> There are 3 ways to fix this.
> 1) Use a double fork method, where the child forks again and then  
> immediately exist.  The parent can block on a wait here because all  
> the first child does before exit is a fork.  This means the child  
> of the child has its parent exit, and so it then becomes the child  
> of init (or I expect launchd in OS X), which calls wait  
> periodically.  This method is the care-free method.
> 2) The parent has a signal handler which detects a child's exit and  
> handles it appropriately. (This is the zombie killer).
> 3) The parent calls wait when the child exist.

Did you consider replacing the fork() by spawing a new thread? That  
would be much cheaper on Mac OS X, and hassle-free.

andy





More information about the devel mailing list