Skip to content

Instantly share code, notes, and snippets.

@gfx
Created August 13, 2010 08:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save gfx/522551 to your computer and use it in GitHub Desktop.
Save gfx/522551 to your computer and use it in GitHub Desktop.
#!perl -w
use strict;
use IPC::Open3;
use Symbol qw(gensym);
my($r, $w, $e) = (gensym, gensym, gensym);
my $pid = open3($r, $w, $e, "perl", "-e",
'print $_ qq{x} x (1024 * 1024) for \*STDOUT, \*STDERR');
#close $w; # => SIGPIPE
#close $e; # => SIGPIPE
warn "waitpid $pid ...\n";
waitpid $pid, 0;
warn $?, "\n";
__END__
#!perl -w
use strict;
use IPC::Open3;
use Symbol qw(gensym);
my($wtr, $rdr, $err) = (gensym, gensym, gensym);
my $pid = open3($wtr, $rdr, 0, "perl", "-e",
'print $_ qq{x} x (1024 * 1024) for \*STDOUT, \*STDERR');
close $wtr;
() = <$rdr>;
warn "waitpid $pid ...\n";
waitpid $pid, 0;
warn $?, "\n";
__END__
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment