[Vienna-pm] fork & verschiedene filehandles
Marinos J. Yannikos
mjy at geizhals.at
Mon Jan 17 06:57:26 PST 2005
Baier Oliver wrote:
> Ich wuerde gerne zu jedem child eine pipe aufmachen, doch weiss ich
> nicht, wie ich's angehen soll. Dieser Ansatz funktioniert nicht:
Ich hatte das mal so gelöst (ohne besonders viele Vorkenntnisse):
use IPC::Run qw (start finish);
for my $i (0..$np-1)
{
my
($r,$w,$err)=(IO::Handle->new,IO::Handle->new,IO::Handle->new);
my $h = start \@cmd,
debug => 1,
'<pipe', $r,
'>pipe', $w,
'2>pipe', $err
|| print STDERR "start failed: $?\n";
$pconnections[$i]=[$r,$w];
}
stdin/out (der childs) sind dann $pconnections[$i][0/1]
Nachteil für dich: die child-Prozesse sind hier extern (@cmd = für die
shell).
AFAIR habe ich das damals nach einem Tipp auf dieser Liste gebastelt ...
MfG,
-mjy
More information about the Vienna-pm
mailing list