use IO::Handle; use strict; use warnings; my $x= IO::Handle->new(); $x->fdopen(fileno(DATA), "r"); my $y= IO::Handle->new(); $y->fdopen(fileno(DATA), "r"); my $pid= fork(); die unless defined $pid; if ($pid == 0) { print "Start c\n"; while (<$x>) { print "c: $_"; sleep 1; } print "stop c\n"; } else { print "Start p\n"; while (<$y>) { print "p: $_"; sleep 1; } print "stop p\n"; } __DATA__ a b c d e