#!perl -slw use strict; $|++; if( my $pid = fork ) { print 'Hello from ithread 1'; sleep 5; open STDOUT, '>', 'fork_test.txt' or die $!; print STDERR 'STDOUT opened to file'; waitpid($pid,0); } else { die 'Couldn\'t fork!' unless defined $pid; for( 1..10 ) { sleep 1; print 'Hello from ithread 2'; } } __END__ P:\>perl58 270224.pl8 Hello from ithread 1 Hello from ithread 2 Hello from ithread 2 Hello from ithread 2 Hello from ithread 2 STDOUT opened to file P:\>perl5.6.1 270224.pl8 Hello from ithread 1 Hello from ithread 2 Hello from ithread 2 Hello from ithread 2 Hello from ithread 2 STDOUT opened to file Hello from ithread 2 Hello from ithread 2 Hello from ithread 2 Hello from ithread 2 Hello from ithread 2 Hello from ithread 2