Proc::HevyA heavyweight module for running processes synchronously | |
Download |
Proc::Hevy Ranking & Summary
Advertisement
- License:
- Perl Artistic License
- Price:
- FREE
- Publisher Name:
- Jason Hord
- Publisher web site:
- http://search.cpan.org/~pravus/
Proc::Hevy Tags
Proc::Hevy Description
A heavyweight module for running processes synchronously Proc::Hevy is a simplistic Perl module for spawning child processes in a synchronous manner. It provides a simple interface for passing data to a process's STDIN while also offering several methods for buffering STDOUT and STDERR output.SYNOPSIS use Proc::Hevy; { my $status = Proc::Hevy->exec( command => 'cat', stdin => "Useless use of cat\n", stdout => \my $stdout, stderr => \my $stderr, ); } { my $status => Proc::Hevy->exec( command => , stdin => , stdout => my $stdout = , stderr => my $stderr = , ); } { my @stdin = qw( foo bar baz ); my ( @stdout, @stderr ); my $status => Proc::Hevy->exec( command => sub { while( ) { my ( $fh, $prefix ) = $. % 2 == 0 ? ( \*STDOUT, 'even' ) : ( \*STDERR, 'odd' ) ; print {$fh} "$prefix :: $_"; } }, stdin => sub { shift @stdin }, stdout => sub { push @stdout, $_ }, stderr => sub { push @stderr, $_ }, ); } { sub cat { my ( @files ) = @_; exec cat => '--', @files } my $status => Proc::Hevy->exec( command => , stdin => \*STDIN, stdout => \*STDERR, stderr => \*STDOUT, ); } { # really useless use of cat my $status = Proc::Hevy->exec( command => 'cat /dev/null 2>/dev/null', ); } Requirements: · Perl
Proc::Hevy Related Software