[Xmonad] darcs patch: zombie_children

David Benbennick dbenbenn at gmail.com
Wed Nov 7 14:22:43 EST 2007


On Nov 6, 2007 11:21 PM, Spencer Janssen <sjanssen at cse.unl.edu> wrote:
> Sadly, SIGCHLD doesn't seem to be a good solution here.  Certain parts of
> xmonad collect child processes with waitForProcess, which throws an exception
> if the process has already been collected.

Good point.  One of those places is in Main.hs, which waits for the
ghc process to recompile .xmonad/xmonad.hs.  That doesn't seem very
elegant, since the window manager is frozen until ghc finishes.  Seems
like that ought to be multithreaded, so the window manager can keep
responding during the compile.

There's still the previous version of this patch, that puts a
getAnyProcessStatus in the main loop in Core.hs.  It's not clear if
that method has a performance impact.  Another possible solution would
be to have a child thread that does blocking getAnyProcessStatus
forever.


More information about the Xmonad mailing list