
dbenbenn:
On Nov 6, 2007 11:21 PM, Spencer Janssen
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.
Yes, I actually ran into that this morning. There was a 2 second delay I wasn't expecting as ghc swapped in. Maybe for we can avoid the call in the unchanged xmonad.hs case, by checking stamps ourselves, rather than asking ghc to do that. Spencer, waddya think? -- Don