On Thu, Aug 29, 2002 at 03:39:36PM -0400, Peter Chen wrote: > On Thu, 2002-08-29 at 13:40, Rocco Caputo wrote: > > I haven't, but I don't use POE::Wheel::Run as much as you do. Is it > > possible that occasionally the SIGCHLD is being delivered before the > > STDOUT/STDERR pipes close, so the wheel is being destroyed before it > > can emit a CloseEvent? > > I did check for that. As you have guessed, some of my applications make > heavy use of this, so I am explicit about the conditions in which a > Wheel::Run is considered done and can be deleted. In this particular > instance, I only delete a wheel when both sigchild and CloseEvent are > received. As I mentioned before, 99% of the time this works perfectly. > Yet I have a few reproducible cases where a CloseEvent is never emitted. > > Even though presently I have a workaround, at some point, I will have to > track this down. This reminds me of another idea that we were bouncing > around, having a component to manage the states for Wheel::Run.
I forgot to ask: Which form of child process are you executing? Program => "shell command" Program => \@shell_command Program => \&function -- Rocco Caputo / [EMAIL PROTECTED] / poe.perl.org / poe.sf.net
