Re: Killing a child process

1999-12-19 Thread Andrei A. Voropaev
On Sun, Dec 19, 1999 at 02:12:11PM -0500, Andrei A. Voropaev wrote: > On Sat, Dec 18, 1999 at 12:02:27AM -0800, Bill Moseley wrote: > > > > I think the close() does the wait, so I don't really need to worry about > > reaping my children. > > You are right here. close() does implicit wait on chil

Re: Killing a child process

1999-12-19 Thread Andrei A. Voropaev
On Sat, Dec 18, 1999 at 12:02:27AM -0800, Bill Moseley wrote: > > I think the close() does the wait, so I don't really need to worry about > reaping my children. You are right here. close() does implicit wait on child to finish. I don't really understand why are you getting SIGPIPE. That signal

Re: Killing a child process

1999-12-18 Thread Bill Moseley
At 09:02 PM 12/17/99 -0400, Eric L. Brine wrote: >Maybe a reaper is needed here? From perlipc: > >sub REAPER { >$waitedpid = wait; ># loathe sysV: it makes us not only reinstate ># the handler, but place it after the wait >$SIG{CHLD} = \&REAPER; >} >$SI

Re: Killing a child process

1999-12-17 Thread Gerd Knops
Bill Moseley wrote: > If running a program with a fork/exec within a mod_perl handler (not the > best thing to do in mod_perl) with the following code: > > my $pid = open( PROG, "-|" ); > > if ($pid) { > while () { > [..] > } > close( PROG ) or log_message( "failed close on program $! $?"); > > Wh

Re: Killing a child process

1999-12-17 Thread Cliff Rayman
How about closing it after you have reaped the child? local $SIG{CHLD}= sub {my $child=wait ; close PROG or log_message("close failed for program and $child $!");}; you'll need to check in your docs for the appropriate way to reap on your system. cliff rayman genwax.com Bill Moseley wrote: >

Re: Killing a child process

1999-12-17 Thread Eric L. Brine
> my $pid = open( PROG, "-|" ); > if ($pid) { > while () { > [..] > } > } > close( PROG ) or log_message( "failed close on program $! $?"); > > I keep getting SIGPIPE errors ($? = 13) returned if I > close before PROG is finished. Maybe a reaper

Killing a child process

1999-12-17 Thread Bill Moseley
If running a program with a fork/exec within a mod_perl handler (not the best thing to do in mod_perl) with the following code: my $pid = open( PROG, "-|" ); if ($pid) { while () { [..] } close( PROG ) or log_message( "failed close on program $! $?")