use Time::HiRes qw( sleep ); my $pid = fork(); die $! if !defined($pid); if ($pid == 0) { for (1..2) { kill TTOU => 0 or die $! if $_ != 1; for (1..4) { sleep(.250) if $_ != 1; print(time(), "\n"); } } } else { $SIG{TTOU}='IGNORE'; sleep 4; kill CONT => $pid or die $!; waitpid($pid, 0); }