use threads; ... my $t1 = async{ system '...'; }; my $t2 = async{ system '...'; }; my $t3 = async{ system '...'; }; my $t4 = async{ system '...'; }; $_->join for $t1, $t2, $t3, $t4;