#!/usr/bin/perl #use strict; #use warnings; use IO::Handle; pipe (READER, WRITER); WRITER->autoflush(1); my $parent=$$; print "parent: $parent\n"; # Forking childs for (my $count = 0; $count < 2; $count++) { defined (my $pid = fork) or die "Cant fork: $!"; } if ($$ == $parent) { # Master process while (1) { print "parent $$\n"; close WRITER; chomp (my $line = ); print "<<<<<<<<<<<<<<<<<<<$line\n"; close READER; sleep 2; } } else { # Fork process while (1) { print "\tchild $$\n"; close READER; print WRITER "$$"; close WRITER; sleep 1; } exit 0; }