perl -Mthreads="stack_size,4096" -Mthreads::shared -MTime::HiRes=time -wE" $N = 64; $t = time; my$c :shared = 0; async( sub{ ++$c; sleep 10 } )->detach for 1..$N; 1 while $c < $N; say time-$t; sleep 10 " 0.578999996185303 perl -Mthreads="stack_size,4096" -Mthreads::shared -MTime::HiRes=time -wE" $N = 256; $t = time; my $c :shared = 0; async( sub{ ++$c; sleep 10 } )->detach for 1..$N; 1 while $c < $N; say time - $t; sleep 10 " 2.57699990272522