forktest.pl #!/usr/bin/perl -w use strict; use LWP::Simple qw(get); my $loops = shift || 10; my $pid; open (OUT, "+> out"); print "Testing with $loops children...\n"; for my $i (0..$loops-1) { if ($pid = fork) { ## Parent $SIG{CHLD} = sub { wait; }; next; } if (defined $pid) { ## ...children my ($price,$desc,$dept); # So everyone can play along at home: my $url ="http://www.perlmonks.org/index.pl?node_id=".(6000+$i); my $page = get ($url); # extract data to $price,$desc,$dept # Now what? print OUT "$i $price $desc $dept\n"; print "$i done\n"; exit; } else { die "Fork failed at number $i: $!\n"; } } while { # get data here? } print "I'm done\n";