my @threads; for (0 ..3)) { my $thr = threads->create( sub { worker(); } ); $thr->detach(); push @threads, $thr; } ... # then later for my $thr ( @threads ) { print 'Thread ', $thr->tid, $thr->is_running ? ' is running' : ' is not running';