in reply to Re: Learning to use fork()
in thread Learning to use fork()

It really feels messy and not clear

11_42

You're really asking how to clean 11_42? 11_42 you say? What is 11_42? Exactly!

1 use Proc::Background

#!/usr/bin/perl -- use strict; use warnings; use Proc::Background; my @jobs = ( [ $^X, 'job1.pl' ], [ $^X, 'job2.pl' ], [ $^X, 'job3.pl' ], [ $^X, 'job4.pl' ], [ $^X, 'job5.pl' ], [ $^X, 'job6.pl' ], [ $^X, 'job7.pl' ], [ $^X, 'job8.pl' ], [ $^X, 'job9.pl' ], [ $^X, 'job10.pl' ], [ $^X, 'job11.pl' ], [ $^X, 'job12.pl' ], [ $^X, 'job13.pl' ], ); my @procs = map { Proc::Background->new( @$_ ) } @jobs; while( @procs ){ @procs = { $_->alive ? $_ : ItsOverMaybeRestart($_) } map @procs; sleep 1; } sub ItsOverMaybeRestart { my( $proc ) = @_; ... return; }

Replies are listed 'Best First'.
Re^3: Learning to use fork() (use Proc::Background)
by AnomalousMonk (Archbishop) on Jan 15, 2019 at 04:51 UTC
    @procs = { $_->alive ? $_ : ItsOverMaybeRestart($_) } map @procs;

    I don't know anything about Proc::Background, but shouldn't that be something like

    @procs = map { $_->alive ? $_ : ItsOverMaybeRestart($_) } @procs;
    ?


    Give a man a fish:  <%-{-{-{-<