sub loop_threads { # Threads durchlaufen my ( $handler_sub, $max_threads ) = @_; do { for ( ($max_threads) ? threads->list(threads::joinable) : threads->list() ) { &{$handler_sub}( $_->join ); } } while ( $max_threads && threads->list >= $max_threads && sleep 3 ); }