in reply to Re^2: fork - alarm - output
in thread fork - alarm - output
Isn't this just easier?
ol>#! perl -slw use strict; my $pid = open IN, '-|', qq[ perl -E"say scalar localtime, sleep 1 for 1.. $ARGV[0]" ] or die $!; eval { local $SIG{ ALRM } = sub { kill -9, $pid; warn 'timeout'; }; alarm 5; waitpid $pid, 0; alarm 0; }; while( <IN> ){ print; } __END__ c:\test>junk 3 Tue Jun 8 15:33:04 20101 Tue Jun 8 15:33:05 20101 Tue Jun 8 15:33:06 20101 c:\test>junk 4 Tue Jun 8 15:33:09 20101 Tue Jun 8 15:33:10 20101 Tue Jun 8 15:33:11 20101 Tue Jun 8 15:33:12 20101 c:\test>junk 5 timeout at C:\test\junk.pl line 11.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: fork - alarm - output
by ikegami (Patriarch) on Jun 08, 2010 at 15:45 UTC | |
by BrowserUk (Patriarch) on Jun 08, 2010 at 16:50 UTC | |
by ikegami (Patriarch) on Jun 08, 2010 at 17:09 UTC | |
by BrowserUk (Patriarch) on Jun 08, 2010 at 22:22 UTC | |
by ikegami (Patriarch) on Jun 08, 2010 at 22:55 UTC | |
|