waitForChildren (c:xs) =
    do t <- takeMVar c
       msg $ " *********** Thread died: " ++ (show t)
       waitForChildren xs

{- | Main entry point for each worker thread.  We just pop the first item,
then call procLoop'. -}
waitForChildren (c:xs) =
    do t <- takeMVar c
       msg $ " *********** Thread died: " ++ (show t)
       waitForChildren xs

{- | Main entry point for each worker thread.  We just pop the first item,
then call procLoop'. -}
waitForChildren (c:xs) =
    do t <- takeMVar c
       msg $ " *********** Thread died: " ++ (show t)
       waitForChildren xs

{- | Main entry point for each worker thread.  We just pop the first item,
then call procLoop'. -}