RE: sigCHLD signal handling (Was: Re: pipes? threadWaitRead?)

2002-07-09 Thread Dean Herington
Using strace as you (Simon) suggested I confirmed that not all my signals are getting delivered. In my test, I install a sigCHLD handler and fork two processes. Both processes terminate as expected, but only one signal is delivered. `ps` confirms that the other child process has terminated: It

RE: sigCHLD signal handling (Was: Re: pipes? threadWaitRead?)

2002-07-09 Thread Simon Marlow
> After much study I have a new theory. It appears that the > pipe machinery > is working fine, but that sometimes my program fails to > "reap" all of its > terminated child processes. I'm using a `sigCHLD` signal handler that > does `getAnyProcessStatus True False` each time it's invoked. >

RE: pipes? threadWaitRead?

2002-07-09 Thread Simon Marlow
> I have some GHC-compiled programs that run OK under Sparc/Solaris but > hang under x86/Linux. I'm using GHC 5.02.3 on both systems (although > I've tried GHC 5.03.20020410 on Linux with the same failures). I'm > debugging to narrow the problem down. My current suspicion is that > closing the

Re: sigCHLD signal handling (Was: Re: pipes? threadWaitRead?)

2002-07-09 Thread Volker Stolz
In local.glasgow-haskell-bugs, you wrote: > After much study I have a new theory. It appears that the pipe machinery > is working fine, but that sometimes my program fails to "reap" all of its > terminated child processes. I'm using a `sigCHLD` signal handler that > does `getAnyProcessStatus Tru